线性结构
线性表
时间复杂度:影响操作数的最大因素
- 平均查询操作数的时间复杂度:O(n)
- 平均插入操作数的时间复杂度:O(n)
- 平均删除操作数的时间复杂度:O(n)
- 单链表:必须始终记录第一个点的位置
- 循环链表:任意一个点记录一下就可以,灵活性高
- 双向链表:代码层面,增加、删除更加简单
- 如果需要做大量
删除、插入
就选链表
- 如果需要做大量
读
就选数组
答案:B、A
队列和栈
答案:B;
入栈!=出栈=入队=出队
答案:C
答案:A
答案:D
串
答案:D
数组和矩阵
答案:B
答案:A
树
二叉树的存储与特性
节点的度:该节点下面有几条线
答案:D
答案:C
答案:C
答案:C
节点的度:该节点下面有几条线
节点数量=分支数量+1
n0+30=10+16+15+28+1
二叉树的遍历
答案:C
特殊的二叉树
答案:B
答案:D
答案:A、C
答案:D
图
图的定义与存储
答案:B
答案:A、B
图的遍历
答案:C
答案:D、B
图的拓扑排序
- 如果没有明确A->B,那么序列中A可以在B的前面,也可以在B的后面。
- 如果序列中A在B的前面,图中可能存在A->B,也可能存在AB无推导关系,但是一定没有B->A。
答案:A
答案:B
最小生成树与最短路径问题