【发布时间】:2016-05-06 15:28:00
【问题描述】:
我想生成给定长度 k 的字符串的排列。下面是代码。
public class PermString {
private static void swap(char[] a, int i, int j){
char temp = a[i];
a[i] = a[j];
a[j] = temp;
}
private static void permute(char[] a, int n){
if(n ==1){
System.out.println(a);
}
for(int i=0; i<n ; i++){
swap(a, i, n-1);
permute(a, n-1);
swap(a, i, n-1);
}
}
public static void main(String[] args) {
String str = "ABCCCD";
char[] characters = str.toCharArray();
permute(characters, characters.length);
}
}
它正确生成字符串的排列,我想知道如何编码固定大小长度的条件,比如k。
【问题讨论】:
标签: algorithm data-structures permutation