首页 > 代码库 > 暴力枚举总述

暴力枚举总述

暴力枚举总述

暴力枚举就是就是把所有可能的答案一一列举出来再加以判断。虽然方法有些笨,但问题规模不大或者没有好的解法时,这也是一个能用的方法。

微笑问题一:输入1~9范围内的整数n,字典序输出1~nn个数的全排列。

分析:每个数字都是n位数,可看做由前缀A和后缀B组成。初始时前缀A为空。函数伪代码见下:

void f(A,B){ //要求的全排列为:已确定的字符串A加上B集合中数字的全排列

  if(B为空)  {输出全排列,return;}

  for(i=1;i<=n;i++){

若数字iB中,f(A+i,B-i);

}

}

<script src="https://code.csdn.net/snippets/347906.js" type="text/javascript"></script>