线性表

线性表:

     一种逻辑结构,相同数据类型的n个数据元素的有限序列,除第一个元素外,每个元素有且仅有一个直接前驱,除最后一个元素外,每个元素有且仅有一个直接后继。


线性表的特点:


(1)元素个数有限    (2)逻辑上元素有先后次序


(3)数据类型相同    (4)仅讨论元素间的逻辑关系


注:线性表是逻辑结构,顺序表和链表是存储结构。

线性表

存储类别

顺序存储结构

单链表

存储分配方式

用一段连续的存储单元依次存储线性表的数据元素

采用链式存储结构,用一组任意的存储单元存放线性表的元素

时间性能

查找O(1)、插入和删除O(n)

查找O(n)、插入和删除O(1)

空间性能

需要预分配存储空间,分大了浪费,小了容易发生上溢

不需要分配存储空间,只要有就可以分配,元素个数不受限制

  • 若线性表需要频繁查找,很少进行插入和删除操作时,宜采用顺序存储结构。若需要频繁插入和删除时,宜采用单链表结构。
  • 当线性表中的元素个数变化较大或者根本不知道有多大时,最好用单链表结构,这样可以不需要考虑存储空间的大小问题。而如果事先知道线性表的大致长度,用顺序存储结构效率会高很多。
原文地址:https://www.cnblogs.com/sunmarvell/p/9435691.html