首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

[转]全排列 - 递归兑现

2012-12-25 
[转]全排列 - 递归实现public class Combination {public static void main(String[] args) {String str

[转]全排列 - 递归实现

public class Combination {public static void main(String[] args) {String str = "abc";combination(str);}public static void combination(String str) {char[] arr = str.toCharArray();comCombination(arr, 0);}private static void comCombination(char[] arr, int index) {if (index == arr.length - 1) {for (int i = 0; i < arr.length; i++) {System.out.printf("%c ", arr[i]);}System.out.println();return;}comCombination(arr, index + 1);for (int i = index + 1; i < arr.length; i++) {arr[index] ^= arr[i];arr[i] ^= arr[index];arr[index] ^= arr[i];comCombination(arr, index + 1);arr[index] ^= arr[i];arr[i] ^= arr[index];arr[index] ^= arr[i];}}}OUTPUT:a b c a c b b a c b c a c b a c a b

热点排行