数组
场景:数量固定,不须要频繁插入删除时。
长处:占用空间小,反对随机拜访。
链表
场景:数量不确定,须要频繁插入删除时。
栈
场景:
1. 浏览器的回退和后退性能
2. 查看符号是否成对呈现({})
3. 反转字符串
4. 保护函数调用(虚拟机栈)
队列
场景:
1. 生产者 - 消费者模型
图
度:示意一个顶点连着多少边。
入度:指向顶点的边。
出度:顶点指向别的顶点的边。
无权图和带权图:边有权重
图的存储
1 应用矩阵存储,A[X,Y] 示意 x y 两顶点之间的关系
- 无向图:矩阵内容是角对称的 1 0 1 0
-
有向图:矩阵内容是不对称的 1 0 1 0
2 应用链表贮存:
- 无向图:X-Y-Z- K 示意 x 和 yzk 相连。
-
有向图:X-Y-X- K 示意 x 指向 yzk
图的搜寻
广度优先搜寻:先搜寻 x,而后搜寻 x 间接相连的 xy,xz,而后搜寻隔一层的 xyk,xyj。能够利用队列。
深度优先搜寻:先搜寻 x,而后搜寻 xy,而后 xyk,而后再 xz。能够利用栈实现。