软件算法穷举搜索法

软件算法穷举搜索法穷举搜索法是对可能是解的众多候选解按某种顺序进行逐一枚举和检验,并从众找出那些符合要求的候选解作为问题的解

对一组数穷尽所有排列,有很直接的方法

将一个排列看作一个长整数,则所有排列对应着一组整数

将这组整数按从小到大的顺序排列排成一个整数,从对应最小的整数开始

按数列的递增顺序逐一列举每个排列对应的每个整数,这能更有效地完成排列的穷举

从一个排列找出对应数列的下一个排列可在当前排列的基础上作部分调整来实现

倘若当前排列为1,2,4,6,5,3,并令其对应的长整数为124653

要寻找比长整数124653更大的排列,可从该排列的最后一个数字顺序向前逐位考察,当发现排列中的某个数字比它前一个数字大时,如本例中的6比它的前一位数字4大,这说明还有对应更大整数的排列

穷举搜索法的缺陷是编写的程序通常不能适应变化的情况

以上内容由大学时代综合整理自互联网,实际情况请以官方资料为准。

相关