线性表

来源:互联网 发布:淘宝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)个位置上
。查找给定键值结点的前面或后面

 其它
统计结点个数、输出各结点的值、复制线性表、拆分线性表、合并线性表、排序线性表、按某种规则整理线性表。

 
原创粉丝点击