线性表
来源:互联网 发布:淘宝uv 怎么求 编辑:程序博客网 时间:2024/04/28 00:34
。线性表是由相同类型结点组成的线性序列
。结点:每个元素称为结点,又称表元、记录
。线性表长度:结点的个数
。空表:长度为0的线性表
。前驱:ei和ei+1 ei为ei+1的前驱
。后继:ei和ei+1 ei+1为ei的后继
。关键字(键):结点可以由苦于个成份组成,能唯一标记结点的称为键
。n 个结点组成的线性表可以表示为(e0, e1, e2...,en-1) 下标为0-n-1
。结点相同,而顺序不同的线性表为不同的线性表
。线性表最重要的性质:线性表中结点的相对位置是固定的。
线性表存储
线性表有多种存储方式,其中最常用的是顺序存储、链接存储
顺序存储
最简单的线性表,通常用数组来表示。
优点:能直接访问线性表中的任一结点
缺点:a.数组通常大小固定、与线性表可以任意增加、删除的要求相矛盾
b.插入、删除操作会引起其它结点的位置移动,不方便。
链式存储
链表最简单的是单链表。
链表的特点:a.每个结点由 结点+后继指针组成
b.链表有一个头指针,指向第一个结点。链表为空时,头指针为空
c.链表最后一个结点后继指针为空
优点:每个结点的实际存储位置可以任意,为插入、删除带来方便,只需要移动相关的后继指针,其它元素不用变动
缺点:a.结点除存储本身信息外,还要存储后继指针。会占用更多空间
b.不能随机的直接访问每个结点
线性表上的操作
插入
。插入在第i(0<= i <=n-1)个位置上
。插入给定键值结点的前面或后面
删除
。删除在第i(0<= i <=n-1)个位置上结点
。删除给定键值的结点
查找
。查找在第i(0<= i <=n-1)个位置上
。查找给定键值结点的前面或后面
其它
统计结点个数、输出各结点的值、复制线性表、拆分线性表、合并线性表、排序线性表、按某种规则整理线性表。