You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
3.1 KiB
3.1 KiB
written by PeterAlbus,Copyright © 2021 - SHOU 1951123 Hong Wu
第1-2章 绪论
1.算法基本概念及5个特性
2.算法的描述方法
- 伪代码
3.算法设计的过程
1.3 重要的问题类型
1.3.3 图问题
- TSP问题
1.3.4 组合问题
4.算法复杂度分析:时间/空间
2.1 算法的时间复杂性分析
最大影响:输入数据的规模
- 时间复杂度的计算
2.1.2 算法的渐进分析
- 大O,Ω(平凡下界)
2.1.3 最好、最坏和平均情况
2.1.5 递归算法的时间复杂性分析
定理2.1(考) 使用主定理计算时间复杂度
P29 第四题
2.2 算法的空间复杂性分析
-
输入输出数据占用的空间
-
算法本身占用的空间
-
执行算法需要的辅助空间
第3章 蛮力法
1.蛮力法的基本思想
2.具体问题中的应用
-
查找问题:顺序
-
串匹配
- BF:朴素的模式匹配
- KMP:主串无回溯(求NEXT数组,Page 40)
-
排序问题
- 选择排序
- 冒泡排序
考试方法:给定序列,经过n次xx排序后的序列,选择题
-
组合问题: 生成排列/生成子集/任务分配/0-1背包问题
-
图问题:哈密尔顿回路/TSP
-
几何问题:最近对简单了解
第4章 分治法
1.分治法的基本思想
- 步骤:划分->求解子问题->合并
- 递归
- 时间复杂度
2.具体问题中的应用
- 排序问题
- 归并排序
- 快速排序
- 组合问题:最大子段和,棋盘覆盖,循环赛日程安排
- 几何问题:最近对
第5章 减治法
1.减治法的基本思想
- 时间复杂度
2.具体问题中的应用
- 查找问题
- 折半查找
- 二叉查找树
- 排序问题
- 堆排序:筛选法
- 组合问题:淘汰赛冠军、假币问题
第6章 动态规划法 -编程题
1.动态规划法的基本思想
- 最优化问题:约束条件/可行解/目标函数
- 适用问题、步骤
- 与分治法的异同点
2.具体问题中的应用
- 图问题
- TSP问题(Page 108)
- 多段图的最短路径
- 组合问题
- 0/1背包问题
- 最长公共子序列问题
- 查找问题
- 最优二叉查找树
- 矩阵快速幂->斐波那契数列
第7章 贪心法
1.贪心法的基本思想
2.具体问题中的应用
- 图问题
- TSP问题、图着色问题、最小生成树
- 组合问题
- 背包问题,活动安排
第8章 回溯法
1.回溯法的基本思想
- 解空间树
- 深度优先搜索
- 剪枝函数
2.具体问题中的应用(解空间树的搜索)
- 图问题
- 图着色问题
- 组合问题
- 八皇后问题
第9章 分支限界法
1.分支限界法的基本思想
- 解空间树
- 广度优先搜素
- 限界函数
2.具体问题中的应用(解空间树)
- 图问题
- TSP
- 多段图最短路径
- 组合问题
- 0/1背包问题 p180 图9.9
第10、11、12章
4分,近似算法、概率算法(舍伍德、拉斯维加斯、蒙特卡洛),特点、适用场景