学习笔记 这周学习了DFS、BFS、贪心算法、二分查找。
- DFS
- 递归特性是在每层的for循环中直接进行递归,for循环的对象是子节点。
- 非递归则使用stack模拟递归
- BDS
- 使用queue
- 访问过程类似水波纹,向外扩散
- 适合用来求解“走到某个节点的最短层数”
- 贪心算法
- 在每一步选择最好的结果,以达成全局最优
- 贪心算法是不能回退的,如果能回退则是回溯或动态规划
- 使用贪心算法的判断是如何证明局部最优能达成全局最优
- 二分查找
- 目标是有序数据
- 前提是目标函数单调性、存在上下界、能够通过索引访问
- 因为是有序的,所以有些特征可以被排除,例如前、后半部分
- 牛顿迭代法的效率高于二分查找