import java.util.ArrayList;
import java.util.List;
public class Combination {
public static void main(String[] args) {
char[] a = { 'a', 'b', 'c' };
List<Character> list = new ArrayList<Character>();
for (int i = 1, len = a.length; i <= len; i++) {
combine(a, 0, i, list);
}
}
/*
* we can also use Stack like this:
stack.push(a[begin]);
combination(a,begin+1,number-1,stack);
stack.pop();
combination(a,begin+1,number,stack);
*/
public static void combine(char[] a, int begin, int resultLength,List<Character> list) {
if (resultLength == 0) {
System.out.println(list.toString());
return;
}
if (begin == a.length){
return;
}
list.add(a[begin]);
combine(a, begin + 1, resultLength - 1, list);
list.remove((Character) a[begin]);
combine(a, begin + 1, resultLength, list);
}
}
the idea is from
http://zhedahht.blog.163.com/blog/static/2541117420114172812217/
分享到:
相关推荐
输入:首先输入数字n,表示要输入多少个字符串。连续输入字符串(输出次数为N,字符串长度小于100)。 输出:按长度为8拆分每个字符串后输出到新的字符串数组,长度不是8整数倍的字符串请在后面补数字0,空字符串不处理。...
自己编的java判断一个字符串是否对称的,忘指导。判断一个字符串是否是对称字符串(方法改进) (一个一个比较) 例如"abc"不是对称字符串,"aba"、"abba"、"aaa"、"mnanm"是对称字符串
题目:给定一个字符串,输出其所有子字符串,例如给定字符串abc,则输出 :a,b,c,d,ab,bc,cd,abc,bcd,abcd。 分析:今天看到csdn博客上面的一题,说是阿里巴巴电面的题目。初看到这道题的时候,就感觉很...
逆序输出任意字符串 逆序输出任意字符串 逆序输出任意字符串 逆序输出任意字符串 逆序输出任意字符串
动态规划算法:从1到26分别对应a-z的每一个字母,输入一串数字的字符串,转换为字母,输出所有可能的字母序列。如123->abc、lc、aw 本资源是按照二叉树的思想解决该问题。从字符串的头部开始,每次可以取一个或者两...
它有两种形式,第一种形式用一个字符在调用字符串中所有出现某个字符的地方进行替换,形式如下: String replace(char original,char replacement) 例如:String s="Hello".replace('l','w'); 第二种形式...
本文实例讲述了C语言实现输入一个字符串后打印出该字符串中字符的所有排列的方法,属于数学里的排列问题。是一个很实用的算法技巧。分享给大家供大家参考。具体实现方法如下: 例如输入字符串abc,则输出由字符a、b...
给定一个只包含小写字母的字符串,请你找到第一个仅出现一次的字符。如果没有,输出no。 【输入】 一个字符串,长度小于100000。 【输出】 输出第一个仅出现一次的字符,若没有则输出no。 【输入样例】 abcabd ...
主要为大家详细介绍了JAVA实现abc字符串的排列组合,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
把输入的字符串倒序输出,比如输入ABC,输出CB
编一个程序,输入一个字符串,将组成字符串的所有非英文字母的字符删除后输出。 输入 一个字符串,长度不超过80个字符。 输出 删掉非英文字母后的字符串。 样例输入 abc123+xyz.5 样例输出 abcxyz
示例 1:输出:3解释:- "a" 是 "abc" 的子字符串。示例 3:输出:3解释:patterns 中的每个字符串都作为子字符串出现在 word "ab
设计一个程序,当输入一个字符串时,要求输出这个字符串的所有排列。 例如输入字符串 abc,要求输出由字母 a、b、c 所能排列出来的所有字符串 abc,acb,bac,bca,cab,cba。 方法:递归法 以字符串 abc 为例介绍...
(关于空间的占用,如果要用一个和字符串a一样长的数组counter来计录a中各起点对应与b最大重合子字符串,这个数组也要和a一样长,空间上也不合适,除非情形很特殊,a短b长,不然不如直接malloc()一个堆空间来储存...
(2)public void stringOperate(),其中调用适当的字符串操作完成(a)判断两个字符传”abc”和”acb”是否相同,(b)输出"c:\\java\\jsp\\A.java"中第二次出现"\\j"的位置,并输出该位置起到串末的子串 3. 创建包...
输入一行字符串,找出其中出现的相同且长度最长的字符串,输入它及其首字符的位置。例如“yyabcdabjcabceg”,输出结果应该为abc和3.
6.1.1 字符串基本操作 Java语言程序设计(第3版) 问题描述 编写一个方法判断字符串是否是回文串。 public static boolean isPalindrome(String s) 思路:取出字符串的第一个和最后一个比较,若不相同,程序结束,...
问题描述: 键盘输入一个仅由小写字母组成的字符串,输出以该串中任 取M个字母的所有排列及排列总数。 例如:输入字符串abcd,输入m=3 则输出为:abc,abd,acd,bcd,n=4
最长子字符串,无重复字符,Java实现 给定字符串s,找到最长子字符串的长度而不重复字符。 示例1:输入:s =“ abcabcbb”输出:3说明:答案为“ abc”,长度为3。 示例2:输入:s =“ bbbbb”输出:1说明:答案为...
split()分割字符串 1.不同环境下的区分 Java:分割字符串不能写成split(“$”)//$为要分割的字符 Android:分割字符串需要加上中括号split(“[$]”)/...所以想要使用 | ,必须用 \ 来进行转义,而在java字符串中,\