在程序中,经常需要将?组(通常是同为某个类型的)数据元素作为整体 管理和使?,需要创建这种元素组,?变量记录它们,传进传出函数等。 ?组数据中包含的元素个数可能发?变化(可以增加或删除元素)。
对于这种需求,最简单的解决?案便是将这样?组元素看成?个序列,? 元素在序列?的位置和顺序,表示实际应?中的某种有意义的信息,或者 表示数据之间的某种关系。
这样的?组序列元素的组织形式,我们可以将其抽象为线性表。?个线性 表是某类元素的?个集合,还记录着元素之间的?种顺序关系。线性表是 最基本的数据结构之?,在实际程序中应??常?泛,它还经常被?作更 复杂的数据结构的实现基础。
根据线性表的实际存储?式,分为两种实现模型:
顺序表,将元素顺序地存放在?块连续的存储区?,元素间的顺序关 系由它们的存储顺序?然表示。
链表,将元素存放在通过链接构造起来的?系列存储块中。
为什么需要链表:
顺序表的构建需要预先知道数据??来申请连续的存储空间,?在进?扩 充时?需要进?数据的搬迁,所以使?起来并不是很灵活。 链表结构可以充分利?计算机内存空间,实现灵活的内存动态管理。
链表的定义:
链表(Linked list)是?种常?的基础数据结构,是?种线性表,但是不 像顺序表?样连续存储数据,?是在每?个节点(数据存储单元)?存放 下?个节点的位置信息(即地址)。
原文地址:http://www.cnblogs.com/Freec/p/7229958.html