图片
第一部分:算法概述
算法定义:一系列解决问题的清晰易行的步骤和规则。以编程实现,输入为问题实例,输出为问题解。
算法特征:输入、输出、有穷性、确定性、可行性。...算法必须有清晰的输入与输出,步骤必须能在有限时间内结束,为任意输入都可以给出解,并且解得出的结果是正确的。...算法类族:递归算法、迭代算法、确定算法、非确定算法、Exact算法、Heuristic算法等。递归算法通过递归解决子问题,迭代通过循环;确定算法对每组输入都给出同样的输出,非确定算法输出随输入变化。...第二部分:常用算法类型
图片
递归算法:子问题的解决依赖于递归算法,典型例子阶乘函数、斐波那契数列。需设置终止条件,否则会出现栈溢出。
贪心算法:在当前选项中做最佳选择,典型例子硬币找零、最小生成树。...硬币找零:每次取面值最大的硬币,直到零钱数为0。
Prim算法:每次选取与当前树相连的权值最小的边,直到所有点被选取。
分治算法:通过递归将问题划分为相同或相似子问题,典型例子二分查找、快速排序。