三k小说网

三K小说网>离语南霜原名是什么 > 第310章 有毛病!(第2页)

第310章 有毛病!(第2页)

和第i个数据元素的存储位置LOC(ai)之间满足下列关

系:LOC(ai+1)=LOC(ai)+l

线性表的第i个数据元素ai的存储位置为:数组具有随机存取的特性

LOC(ai)=LOC(a0)+(i)*l

在高级语言(如C语言)环境下:数组具有随机存取的特性,因此,借助数组来描述顺序

表。除了用数组来存储线性表的元素之外,顺序表还应该有表示线性表的长度属性,所以用

结构类型来定义顺序表类型。

#defineMAXSIZE100数组最大长度

typedefstruct{定义线性表结构体

intdata[MAXSIZE];线性表存储元素的数组

intlength;记录线性表的长度

}*SqList;线性表的名称

顺序表小结。

1、单链表的定义

链式存储:用一组任意的存储单元存储线性表中的数据元素。用这种方法存储的线性表

简称线性链表。

为了正确表示结点间的逻辑关系,在存储每个结点值的同时,还必须存储指示其直接后

继结点的地址(或位置),称为指针(pointer)或链(link),这两部分组成了链表中的结点结构,

链表是通过每个结点的指针域将线性表的n个结点按其逻辑次序链接在一起的。每一个结只

包含一个指针域的链表,称为单链表。

存储链表中结点的一组任意的存储单元可以是连续的,也可以是不连续的,甚至是零散

分布在内存中的任意位置上的。链表中结点的逻辑顺序和物理顺序不一定相同。

操作方便,总是在链表的第一个结点之前附设一个头结点(头指针)head指向第一个。

2、双向链表

双向链表(DoubleLinkedList):指的是构成链表的每个结点中设立两个指针域:一个指向

其直接前趋的指针域prior,一个指向其直接后继的指针域next。这样形成的链表中有两个

方向不同的链,故称为双向链表。将头结点和尾结点链接起来也能构成循环链表,并称之为

已完结热门小说推荐

最新标签