~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
开发工具与关键技术:
作者:吴业华
撰写时间:2020年5月18号
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- 线性表的定义
定义:由n(n>=)个相同类型数据元素(结点)a1,a2,…an组成的有限序列。(a1,a2,…an)
其中:
N:数据元素的个数,也称表的长度。
空表:n = 0,记为()
由26个英文字母构成的表(a,b,c,…z)是一个线性表;
由全体职工的基本工资构成的表
(1236.60,1166.87,900.00,890.45,…)是线性表
我们常常玩的扑克牌,其数据元素—牌,是由牌点、花色两项组成的,是复合数据类型,这种数据类型的线性表称为复合线性表。
线性表的特征:
- 在非空的线性表,由且仅有一个开始结点a1,它没有直接前趋,而仅有一个直接后继a2;
- 有且仅有一个终端结点an,它没有直接后继,而仅有一个直接前趋an-1;
- 其余的内部节点ai(2<=i<=n-1)都有且仅有一个直接前趋ai-1和一个直接后继ai+1。
线性表的基本运算:
- 求表长:求线性表中元素的个数。
- 遍历:从左到右(或从右到左)扫描(或读取)表中的各元素。
- 按编号查找:找出表中第i个元素。
- 按特征查找:按某个特定值查找线性表。
- 插入:在第i个位置上(即原第i个元素前)插入一新元素。
- 删除:删除原表中的第i个元素。
- 排序:按元素某特征值的递增(或递减)排序,重排表中各元素。
- 顺序线性表
顺序表示很守规矩的,每个元素都前后有序、整整齐齐的站在一起。
- 线性表的链式存储
链表不是地址连续的空间,他的插入和删除不需要移动元素,它看到内存有空余地址就可以毫无顾忌地挤进去,所以我们叫它”调皮的链表“。
- 循环单链表
单链表的结构:
单链表中构成链表的结点只有一个指向直接后继结点的指针域。
其结构特点:逻辑上相邻的数据元素在物理上不一定相邻。