顺序表与链表都是线性表(n个具有相同特性的数据元素形成的有限序列)。
顺序表 是用一段物理地址连续的存储单元依次存储数据元素的线性结构,一般情况下采用数组存储。在数组上完成数据的增删查改。顺序表又分为静态顺序表和动态顺序表,静态顺序表使用定长数组来存储数据,但是如果一旦存储超过定长,就很难处理,所以把静态顺序表的定长数组改为动态开辟的数组。
这个是我自己写的简单顺序表功能实现:https://blog.csdn.net/zjx1113/article/details/84727490
链表 是一种物理存储结构上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。链表有八种形式,单向,双向,带头,不带头(有无新节点),循环,非循环。在这八种形式中常用的是无头单向不循环链表(结构简单,一般不会单独用来存数据,实际中更多是作为其他数据结构的子结构,如哈希桶、图的邻接表等等。)和有头双向循环链表(结构最复杂,一般用在单独存储数据。实际中使用的链表数据结构,都是带头双向循环链表。另外这个结构虽然结构复杂,但是使用代码实现后会发现结构会带来很多优势,实现反而简单了)。
这是我写的单向无头单向非循环链表的简单功能实现:https:/