蛮力法

1.排序

选择排序 :平方复杂性(源自键比较),但只需要n次键交换

冒泡排序: 平方复杂性,键交换次数不定

2.顺序查找,字符串匹配

顺序查找:在序列有序情况下可提前退出

字符串匹配:在正文中查找模式开头,然后依次检查模式的剩余部分,最坏情况mn(m=leng(正文),n=leng(模式))。在剩余正文长度不足时提前退出

3.最近对问题,凸包问题

最近对:遍历计算所有两点距离

凸包:最小凸集合。选两个点,剩余点都在两点所成直线同侧,选择该两点

4.穷举排列组合

旅行商问题:列出所有可能回路(点排列)

背包问题:列出所有可能组合,判断是否在问题范畴内

分配问题

5.深搜,广搜

深搜查找树,广搜查找树,访问边与回溯边

深搜:用栈跟踪,维护已访问节点,未访问节点

检查连通性,无环性

图的关节点:移除后不连通

广搜:使用队列跟踪

树向边:通向未访问,

(广搜)交叉边:通向已访问,或兄弟节点  ?

(深搜)回边

对于邻接矩阵,复杂度V^2 邻接链表V+E

深搜树:可能生成顶点的多个排序  广搜:一个  ?

猜你喜欢

转载自www.cnblogs.com/qmcj/p/9096395.html