18.5.5 二叉树的删除新增查找最小最大
哈夫曼编码 排序 斐波那契数列 栈实现计算器 栈实现中序表达式转后序。
18.5.6
堆(优先队列) 散列 图论 深度优先 红黑树
18.5.26
图论算法:
{
欧拉回路:用一只笔画出不重复的线通过所有的顶点。
深度广度优先算法。
无向有向图无圈有圈图 拓扑排序
网络流问题:对应交通流量或者水管里的流水,是可以通过边来传递的
最短路径算法:dijkstra算法
最小生成树:kruskal算法、prim算法。对应房子里用最短路径铺电线。
np-完全性问题
}
18.6.28
{
树、
avl树、
二叉树、
B树、
红黑树、
伸展树
}
二叉树节点的增删操作
平衡树的初步了解
avl树的增加删除细节编写
树的常见算法题:树的深度, 树的(叶子)节点数,两个节点的最低公共节点
开始学习堆——优先队列。目前概念是主要用来计算出优先级(排序?),和树有点类似。但是不适合用来查找某个具体的值,因为需要使用线性遍历来查找。
{
二叉堆的基本操作
左式堆
斜堆
二项队列
}
堆的应用和基本操作了解。
堆的上滤和下滤的操作。
算法设计技巧:
1、分治算法
2、动态规划
3、随机化算法