排列(Arrangement),简单讲是从N个不同元素中取出M个,按照一定顺序排成一列,通常用A(M,N)表示.当M=N时,称为全排列(Permutation).从数学角度讲,全排列的个数A(N,N)=(N)*(N-1)*...*2*1=N!,但从编程角度,如何获取所有排列?那么就必须按照某种顺序逐个获得下一个排列,通常按照升序顺序(字典序)获得下一个排列. 例如对于一个集合A={1,2,3,},首先获取全排列a1: 1,2,3,:然后获取下一个排列a2: 1,3,2,:按此顺序,A的全排列如下…