数据结构
算法(Algorithm)
- 一个有限的指令集
- 接受一些输入(有时不需要输入)
- 产生输出
- 有限步骤终止
- 每一条指令:
– 有充分的目标,不可以有歧义
– 在计算机能处理的范围内
– 描述不依赖于计算机语言及具体的实现
好的算法
- 考虑两个维度:
– 空间复杂度 S(n)
– 时间复杂度T(n)
线性结构
线性表
线性表(Linear List):由同类型数据元素构成有序序列的线性结构
- 类型名称:线性表(List)
- 数据对象集:线性表是n(>=0)个元素构成的有序序列(a1,a2, …,an)
- 操作集:线性表L∈List,整数i表示位置,元素X∈ElementType,线性表的基本操作有:
– List MakeEmpty()
– ElementType FindKth(int K, List L) // 返回位序K的元素
– int Find(ElementType X,List L) // 返回X第一次出现的位置
– void Insert(ElementType X,int i, List L)
– void delete(ElementType X, int i, List L)
– int Length(List L) // 返回L的长度n - 实现:
– 顺序存储
– 链式存储