4个数的全排列
package com.company;
public class Main {
static int count=0;
public static void main(String[] args) {
int a[]={1,2,3,4};
pailie(a,0,a.length);
}
static void exchange(int[] a, int i, int j)
{
int temp=a[i];
a[i]=a[j];
a[j]=temp;
}
static void pailie(int[] arr, int p, int q)
{
if(p==q)
{
count++;
System.out.print("第"+count+"次排列:");
for(int i:arr) {
System.out.print(i);
}
System.out.println();
}else
for(int i=p; i<q; i++){
exchange(arr,p,i);
pailie(arr,p+1,q);
exchange(arr,p,i);
}
}
}
结果
/usr/java/jdk-9.0.1/bin/java -javaagent:/usr/idea-IC-172.4343.14/lib/idea_rt.jar=40053:/usr/idea-IC-172.4343.14/bin -Dfile.encoding=UTF-8 -classpath /home/dfzxk/javaclass/out/production/javaclass com.company.Main
第1次排列:1234
第2次排列:1243
第3次排列:1324
第4次排列:1342
第5次排列:1432
第6次排列:1423
第7次排列:2134
第8次排列:2143
第9次排列:2314
第10次排列:2341
第11次排列:2431
第12次排列:2413
第13次排列:3214
第14次排列:3241
第15次排列:3124
第16次排列:3142
第17次排列:3412
第18次排列:3421
第19次排列:4231
第20次排列:4213
第21次排列:4321
第22次排列:4312
第23次排列:4132
第24次排列:4123
Process finished with exit code 0
任务分配问题
网友评论