g***j 发帖数: 1275 | 1 给定一个字符串,找出所有的可能的字符串,大小不限。
比如给定
aBc
输出
abc
abC
aBc
aBC
就是同样的字母顺序,如果都转换成小写后字符串是一样的。如何高效的输出?
谢谢了 |
r****y 发帖数: 26819 | 2 做一个等长的01的permutation
【在 g***j 的大作中提到】 : 给定一个字符串,找出所有的可能的字符串,大小不限。 : 比如给定 : aBc : 输出 : abc : abC : aBc : aBC : 就是同样的字母顺序,如果都转换成小写后字符串是一样的。如何高效的输出? : 谢谢了
|
g***j 发帖数: 1275 | 3 如何高效的做呢?
【在 r****y 的大作中提到】 : 做一个等长的01的permutation
|
l*****a 发帖数: 14598 | 4 public void get(char[] arr,int start,List result) {
if(start==arr.length) {
result.add(new String(arr));
return;
}
get(arr,start+1,result);
if(arr[start]>='a'&&arr[start]<='z') {
arr[start]+='A'-'a';
} else {
arr[start]+='a'-'A';
}
get(arr,start+1,result);
}
【在 g***j 的大作中提到】 : 如何高效的做呢?
|
r****y 发帖数: 26819 | 5 permutation有标准的算法。比如princeton的java版本。
【在 g***j 的大作中提到】 : 如何高效的做呢?
|
o***g 发帖数: 2784 | 6 for (int i = 0 ;i< (1<
就是从00000...000到11111...111
【在 g***j 的大作中提到】 : 如何高效的做呢?
|
g***j 发帖数: 1275 | 7 这样每个i都要查一遍bit 是0还是1吧
这样复杂度是 2^len * len
【在 o***g 的大作中提到】 : for (int i = 0 ;i< (1<: 就是从00000...000到11111...111
|
o***g 发帖数: 2784 | 8 楼上的程序不是挺好的
【在 g***j 的大作中提到】 : 这样每个i都要查一遍bit 是0还是1吧 : 这样复杂度是 2^len * len : :
|