写一个求排列的Java代码
时间: 2023-03-13 19:46:02 浏览: 89
public class Permutation {
public static void main(String[] args) {
int[] array = {1, 2, 3};
printPermutations(array, 0);
}
private static void printPermutations(int[] array, int index) {
if (index == array.length - 1) {
printArray(array);
} else {
for (int i = index; i < array.length; i++) {
swap(array, index, i);
printPermutations(array, index + 1);
swap(array, index, i);
}
}
}
private static void swap(int[] array, int i, int j) {
int temp = array[i];
array[i] = array[j];
array[j] = temp;
}
private static void printArray(int[] array) {
for (int i : array) {
System.out.print(i + " ");
}
System.out.println();
}
} public class Permutation {
public static void main(String[] args) {
int[] array = {1, 2, 3};
printPermutations(array, 0);
}
private static void printPermutations(int[] array, int index) {
if (index == array.length - 1) {
printArray(array);
} else {
for (int i = index; i < array.length; i++) {
swap(array, index, i);
printPermutations(array, index + 1);
swap(array, index, i);
}
}
}
private static void swap(int[] array, int i, int j) {
int temp = array[i];
array[i] = array[j];
array[j] = temp;
}
private static void printArray(int[] array) {
for (int i : array) {
System.out.print(i + " ");
}
System.out.println();
}
} 答:以下是一段用于求排列的Java代码:
public class Permutation {
public static void main(String[] args) {
int[] array = {1, 2, 3};
printPermutations(array, 0);
}
private static void printPermutations(int[] array, int index) {
if (index == array.length - 1) {
printArray(array);
} else {
for (int i = index; i < array.length; i++) {
swap(array, index, i);
printPermutations(array, index + 1);
swap(array, index, i);
}
}
}
private static void swap(int[] array, int i, int j) {
int temp = array[i];
array[i] = array[j];
array[j] = temp;
}
private static void printArray(int[] array) {
for (int i : array) {
System.out.print(i + " ");
}
System.out.println();
}
}