您的位置:首页 > 其它

题目:输入一个字符串,输出该字符串中字符的所有组合。举个例子,如果输入abc,它的组合有a、b、c、ab、ac、bc、abc。

2011-10-23 16:39 861 查看
题目:输入一个字符串,输出该字符串中字符的所有组合。举个例子,如果输入abc,它的组合有a、b、c、ab、ac、bc、abc。

学习别人的:http://zhedahht.blog.163.com/blog/static/2541117420114172812217/

/*
* AllQ.java 2011-10-23
* Copyright 2010 - 2011
*/
package java_string;

/*字符串的所有组合*/

public class AllQ {

/**
* @param args
*/
public static void combination(String str, int index, int number,
StringBuilder sb) {
if (number == -1 ) {
System.out.println(sb.toString());
return;
}
if (index == str.length())
return;

sb.append(str.charAt(index));

combination(str, index + 1, number - 1, sb);

sb.deleteCharAt(sb.length() - 1);

combination(str, index + 1, number, sb);

}

public static void combine(String str) {
if (str == null)
return;
int length = str.length();
StringBuilder sb = new StringBuilder();

for (int i = 0; i < length; i++) {
combination(str, 0, i, sb);
}
}

public static void main(String[] args) {
// TODO Auto-generated method stub

combine("abcd");

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐