算法学习笔记(11)- 回溯法

(1)穷举搜索

列举问题的所有状态从而寻找符合问题的解的方法。适用于需可预见确定解元素个数,且问题规模不是特别大,对于每个解变量a 1 ,…,a n 的可能值为一个连续的值域。

(2)深度优先搜索 (DFS)

采用栈或递归实现,适用于求解初始结点到目标结点的所有方案,或求解初始结点到目标结点的一种方案。

(3)广度优先搜索 (BFS)

采用队列或优先队列实现,适用于求解初始结点所能达到的所有结点,或求某一结点到某目标结点的最短路径。

算法学习笔记(11)- 回溯法_第1张图片

(4)纯随机搜索 (Random Walk )

(5)启发式搜索

在状态空间中,对每一个搜索的位置进行评估,得到最好的位置,再从这个位置进行搜索直到目标(即:通过启发式函数,选择代价最少的结点作为下一步搜索结点而跳转其上),使搜索过程沿着被认为最有希望的前沿区段发展。

回溯法

算法学习笔记(11)- 回溯法_第2张图片

算法学习笔记(11)- 回溯法_第3张图片

算法学习笔记(11)- 回溯法_第4张图片
算法学习笔记(11)- 回溯法_第5张图片

算法学习笔记(11)- 回溯法_第6张图片
算法学习笔记(11)- 回溯法_第7张图片

算法学习笔记(11)- 回溯法_第8张图片
算法学习笔记(11)- 回溯法_第9张图片
算法学习笔记(11)- 回溯法_第10张图片

算法学习笔记(11)- 回溯法_第11张图片

你可能感兴趣的:(算法学习笔记(11)- 回溯法)