大家好,我是小新,我来为大家解答以上问题。回溯by二月竹,回溯很多人还不知道,现在让我们一起来看看吧!
1、回溯 词意 huí sù 回忆 ---------------------------------------- 1 回溯算法也叫试探法,它是一种系统地搜索问题的解的方法。
2、回溯算法的基本思想是:从一条路往前走,能进则进,不能进则退回来,换一条路再试。
3、 用回溯算法解决问题的一般步骤为: 一、定义一个解空间,它包含问题的解。
4、 二、利用适于搜索的方法组织解空间。
5、 三、利用深度优先法搜索解空间。
6、 四、利用限界函数避免移动到不可能产生解的子空间。
7、 问题的解空间通常是在搜索问题的解的过程中动态产生的,这是回溯算法的一个重要特性。
8、 回溯法是一个既带有系统性又带有跳跃性的的搜索算法。
9、它在包含问题的所有解的解空间树中,按照深度优先的策略,从根结点出发搜索解空间树。
10、算法搜索至解空间树的任一结点时,总是先判断该结点是否肯定不包含问题的解。
11、如果肯定不包含,则跳过对以该结点为根的子树的系统搜索,逐层向其祖先结点回溯。
12、否则,进入该子树,继续按深度优先的策略进行搜索。
13、回溯法在用来求问题的所有解时,要回溯到根,且根结点的所有子树都已被搜索遍才结束。
14、而回溯法在用来求问题的任一解时,只要搜索到问题的一个解就可以结束。
15、这种以深度优先的方式系统地搜索问题的解的算法称为回溯法,它适用于解一些组合数较大的问题. 。
本文到此讲解完毕了,希望对大家有帮助。