视频课程:数据结构(浙江大学: 陈越、何钦铭)(第二讲)
┏━━━━━━目录━━━━━━┓
2.1 线性表及其实现
2.2 堆栈2.3 队列
2.4 应用实例:多项式加法运算
┗━━━━━━━━━━━━━━┛
2.1 线性表及其实现
1、引子——多项式:项数n,各项系数ai,指数i
方法1:顺序存储结构直接表示(数组)
方法2:顺序存储结构表示非零项(结构数组:按指数大小有序存储)
方法3:链表结构存储非零项包(链表:括系数和指数两个数据域以及一个指针域)
* 1.同一个问题可以有不同的表示(存储)方法
* 2. 有一类共性问题:有序线性序列的组织和管理
2、线性表(Linear List):由同类型数据元素构成有序序列的线性结构
(1)表中元素个数称为线性表的长度
(2)线性表没有元素时,称为空表
(3)表起始位置称表头,表结束位置称表尾
3、线性表的抽象数据类型描述
类型名称:线性表(List)
数据对象集:线性表是 n (≥0)个元素构成的有序序列( a1, a2, ...,an )
操作集:线性表L属于 List,整数i表示位置,元素X ElementType,
4、线性表的顺序存储实现——利用数组的连续存储空间顺序存放线性表的各元素
* 【插入】平均移动次数为 n /2,平均时间性能为 O(n)
* 【删除】平均移动次数为 (n-1) /2,平均时间性能为 O(n)
* 【查找】成功的平均比较次数为(n +1)/2,平均时间性能为 O(n)。
5、线性表的链式存储<