还差,最后一个条件没有实现,楼主自己改进吧class TR
{
public static void main(String[] args)
{
int[] nums = {1,2,2,3,4,5};
changes(nums,0,6);
} public static void changes(int[] a, int k, int n){
if (k==n){
for(int i = 0; i < 6; i++){
System.out.print(a[i]);
} System.out.println(); }else {
for(int j = k; j < n; j++)
{
int temp = a[k];
a[k] = a[j];
a[j] = temp;
if (k==2 && a[k]==4){
break;
}
changes(a, k+1, n); temp = a[k];
a[k] = a[j];
a[j] = temp;
}
}
}
}
{
public static void main(String[] args)
{
int[] nums = {1,2,2,3,4,5};
changes(nums,0,6);
} public static void changes(int[] a, int k, int n){
if (k==n){
for(int i = 0; i < 6; i++){
System.out.print(a[i]);
} System.out.println(); }else {
for(int j = k; j < n; j++)
{
int temp = a[k];
a[k] = a[j];
a[j] = temp;
if (k==2 && a[k]==4){
break;
}
changes(a, k+1, n); temp = a[k];
a[k] = a[j];
a[j] = temp;
}
}
}
}
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货