暴力枚举就是就是把所有可能的答案一一列举出来再加以判断。虽然方法有些笨,但问题规模不大或者没有好的解法时,这也是一个能用的方法。
问题一:输入1~9范围内的整数n,字典序输出1~n这n个数的全排列。
分析:每个数字都是n位数,可看做由前缀A和后缀B组成。初始时前缀A为空。函数伪代码见下:
void f(A,B){ //要求的全排列为:已确定的字符串A加上B集合中数字的全排列
if(B为空) {输出全排列,return;}
for(i=1;i<=n;i++){
若数字i在B中,f(A+i,B-i);
}
}
原文地址:http://blog.csdn.net/chuchus/article/details/25918017