java permutation关于全排列的问题

来源:互联网 发布:360数据恢复大师免费吗 编辑:程序博客网 时间:2024/06/06 03:05
public class Test { public static void main(String[] args) {  System.out.println("Input a string: ");  String text = new java.util.Scanner(System.in).next();  permutate(text); }  static void permutate(String text) {  permutate(text.toCharArray(), 0, text.length()); }  static void permutate(char[] array, int current, int length) {  if (current == length) {   print(array);   return;  }  for (int i = current; i < length; ++i) {   swap(array, current, i);   permutate(array, current + 1, length);   swap(array, current, i);  } }  static void print(char[] array) {  for (char c : array)   System.out.print(c);  System.out.println(); }  static void swap(char[] array, int first, int second) {  char temp = array[first];  array[first] = array[second];  array[second] = temp; } }
0 0
原创粉丝点击