黑马程序员技术交流社区
标题:
任意数字序列,输出它们所有的排列组合
[打印本页]
作者:
王中利
时间:
2012-10-2 23:28
标题:
任意数字序列,输出它们所有的排列组合
本帖最后由 王中利 于 2012-10-3 22:33 编辑
任意数字序列,输出它们所有的排列组合代码怎么写?
作者:
柏占肖
时间:
2012-10-3 17:16
public class Rank {
public static void main(String[] args) {
int[] array = { 7, 9, 5, 8 };
boolean[] isSelected = new boolean[array.length];
int[] array2 = new int[array.length];
for (int i = 0; i < isSelected.length; i++) {
isSelected[i] = false;
}
rankArray(array, isSelected, array2, 0);
}
public static void rankArray(int[] array, boolean[] isSelected,
int[] array2, int length) {
if (array.length == length) {
for (int i : array2) {
System.out.print(i + ",");
}
System.out.println();
return;
}
for (int i = 0; i < isSelected.length; i++) {
if (isSelected[i]) {
continue;
}
isSelected[i] = true;
array2[length] = array[i];
rankArray(array, isSelected, array2, length + 1);
isSelected[i] = false;
}
}
}
复制代码
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2