与408的关联:1. 逻辑结构和存储结构在选择题中会有涉及。2. 时间复杂度几乎是每一年大题必考内容!
逻辑结构与存储结构
逻辑结构(对人友好)
- 集合结构(无关系)
- 线性结构(一对一)
- 树形结构(一对多)
- 图形结构(多对多)
存储结构(对计算机友好)
1. 顺序存储
int Array[6] = {1,2,3,4,5,6};//定义数组并初始化
prinf("%d\n",Array[3]);//随机访问第4个元素
2. 链式存储
typedef struct Lnode{
ElemType data;
struct Lnode *next;
}Lnode,*LinkList;
Lnode *L;
L = (LinkList)malloc(sizeof(Lnode));
A -> next = B;
B -> next = C;
顺序存储与链式存储分析
优点:
顺序存储:
- 可以实现随机存取。
- 每个元素占用最少的空间。
链式存储:
充分利用所有单元空间,不会出现碎片现象。
缺点:
顺序存储:
只能使用整块的存储单元,会产出较多的碎片。
链式存储:
- 需要额外的存储空间用来存放下一结点的指针。
- 只能