给定一个字符串,输出所有的排列组合方式
2011-09-10 15:12
330 查看
去参加一个笔试,遇到一个问题就是给定字符串"123456"要我写程序输出所有的排列组合方式,当时头很大,一直想不出来,于是很磋的写了循环。回来了好好想了想,参考网上的资料,今天真正理解并且自己写了出来。是用递归,理解为每次都是求已知的字符串与未排列的字符串的组合!
/* 2011-9-9 author:BearFly1990 */ package temp; public class RecursionString { public static void main(String[] args) { String b = "123456"; doit("",b); } public static void doit(String a,String b){ if(a.length()== 6){ System.out.println(a); }else{ for(int i = 0; i< b.length(); i++){ String tempa = new String(a); String tempb = new String(b); doit(tempa+tempb.charAt(i),new StringBuilder(tempb) .deleteCharAt(i).toString()); } } } }
相关文章推荐
- 递归问题之一:给定一字符串,输出字符串中所有字符子串的各种组合形式,长度为一个字符到字符串的长度,忽略排序
- 给定一个字符串,找出其所有不重复的排列组合
- Swift - 排列组合之全排列 (输入一个字符串,输出该字符串包含的字符的所有组合)
- 给定一个字符串,输出其所有的可能排列
- C#实现输入一个字符串输出该字符串字符的所有排列方式
- 【编程题】输入一个字符串,输出该字符串中相邻字符的所有组合。
- 输出一个字符串所有排列。注意有重复字符
- 给定一个字符串,里面用空格分开为多个(>=6)部分组合,如:01 02 03 04 05 06 07 …… 写一个函数返回任意6个组合的字符串: 输出格式实例: 01 02 03 04 05 06 0
- 笔试题:给出一个函数来输出字符串的所有排列
- 已知一个字符串,输出它包含字符的所有排列(permutations)
- 算法40(字符串的排列,给出一个函数来输出一个字符串的所有排列)
- 给出一个函数来输出一个字符串的所有排列。
- 编写一个方法,返回某字符串的所有排列组合。
- 给定一个数组,n个数,打印所有可能的r位数的组合。例如{1,2,3,4}n=4,r=2.输出{1,2}{1,3}{1,4}{2,3}{2,4}{3,4}
- JAVA 输出指定字符串所有排列组合
- 给定一个字符串S,求所有长度小于等于3的子串出现的次数,输出结果按出现次数从大到小
- 使用循环的方式打印字符串所有排列组合
- 给出一个函数来输出一个字符串的所有排列
- Java练习题-输入一个字符串,输出该字符串中字符的所有组合(二)
- 输入一个字符串,要求输出字符串中字符所有的排列,例如输入"abc",得到"abc","acb","bca","bac","cab","cba"