1.0线性表

一、基本概念

         线性表是零个或多个数据元素的有限序列。数学表达如下图所示:
1.0线性表

二、详细分析

1、顺序存储结构

         线性表的顺序存储结构,指的是用一段地址连续的存储单元依次存储线性表的数据元素。

1.0线性表
插入数据示意图
1.0线性表
从最后一个元素开始向前遍历到第i个位置,分别将它们都向后移动一个位置,将插入的数据元素放到位置i处。

删除数据示意图
1.0线性表
取出删除元素,从删除元素位置开始遍历到最后一个元素位置,分别将它们都向前移动一个位置。

顺序存储的优点

  • 无须为表示表中元素之间的逻辑关系而增加额外的存储空间
  • 可以快速地存取表中任一位置的元素

顺序存储的缺点

  • 插入和删除操作需要移动大量元素
  • 当线性表长度变化比较大时,难以确定存储空间的容量
  • 造成存储空间的“碎片”

2、链式存储结构

         线性表的链式存储结构
1.0线性表

插入元素示意图
1.0线性表

删除元素示意图
1.0线性表

三、分析总结

         若线性表需要频繁查找,很少进行插入和删除操作时,宜采用顺序存储结构。若需要频繁插入和删除时,宜采用单链表结构。当线性表中的元素个数变化较大或者根本不知道多大时,最好用单链表结构,这样可以不需要考虑存储空间的大小问题。而如果事先知道线性表的大致长度,比如一年112个月,这种用顺序存储结构效率会高很多。