排列组合,其实是试探双方,也称回溯算法
package com.test;
public class Test {
/**
* @param args
*/
public static void main(String[] args) {
int[] a = { 1, 2, 3, 4,5,6 };
test(a, 0);
}
private static void test(int[] a, int index) {
if (index == a.length) {
if(a[2]==4)return;
else{
for (int i = 0; i < a.length; i++) {
if(i!=a.length-1){
if((a[i]==5&&a[i+1]==3)||(a[i]==3&&a[i+1]==5))
return;
}
}
for (int i = 0; i < a.length; i++) {
System.out.print(a[i] + " ");
}
System.out.println();
return;
}
}
for (int i = index; i < a.length; i++) {
swap(a, index, i);
test(a, index + 1);
swap(a, i, index);
}
}
private static void swap(int[] a, int i, int j) {
int temp = a[i];
a[i] = a[j];
a[j] = temp;
}
}
java 全排列
最新推荐文章于 2025-12-16 14:17:05 发布
1751

被折叠的 条评论
为什么被折叠?



