Archive: 2015/5

next_permutation

产生一个数列的全排列,自己想了一个实现算法,和stl里面的实现算法一样,具体的思路都在注释中。代码中还实现了一种递归的做法,参考了网上的资料,递归的做法代码简短很多,但可操作性而言,没有next方式好。因为实际应用中需要针对每个permutation作相应的操作。用递归的话需要把操作写在permutation的实现中,耦合性很高。另外,递归的方式受限于系统栈空间的大小,N只能在一定范围内处理。理论上,next的方式N可以无限大。