[java]代码库
package wzs.sort;
//用1、2、3、4、5这五个数字,用java写一个main函数,打印出所有不同的排列,如:51234、41235等。
public class Test_wzs012
{
public static void main(String[] args)
{
int[] bits = new int[]
{
1, 2, 3, 4, 5
};
sort("-", bits);
}
private static void sort(String prefix, int[] a)
{
if (a.length == 1)
{
System.out.println(prefix + a[0]);
}
for (int i = 0; i < a.length; i++)
{
sort(prefix + a[i], copy(a, i));
}
}
private static int[] copy(int[] a, int index)
{
int[] b = new int[a.length - 1];
System.arraycopy(a, 0, b, 0, index);
System.arraycopy(a, index + 1, b, index, a.length - index - 1);
return b;
}
}
//源代码片段来自云代码http://yuncode.net