字符串全排列
来源:互联网 发布:mac android 真机调试 编辑:程序博客网 时间:2024/06/18 00:13
依次选出每一个字符元素,作为排列的第一个元素,然后对剩余的元素进行全排列,如此递归处理,从而得到所有元素的全排列。以对字符串abc进行全排列为例,我们可以这么做:
固定a,求后面bc的排列:abc,acb,求好后,a和b交换,得到bac
固定b,求后面ac的排列:bac,bca,求好后,c放到第一位置,得到cba
固定c,求后面ba的排列:cba,cab。
固定a,求后面bc的排列:abc,acb,求好后,a和b交换,得到bac
固定b,求后面ac的排列:bac,bca,求好后,c放到第一位置,得到cba
固定c,求后面ba的排列:cba,cab。
public class Test { private static StringBuilder result = new StringBuilder(); public static void main(String[] args) { perm("abc".toCharArray(), 0); System.out.println(result.toString()); } public static void perm(char[] in, int start) { if (start == in.length - 1) { result.append(in); result.append("\n"); } else { for (int i = start; i < in.length; i++) { moveToHead(in, start, i); perm(in, start + 1); moveToHead(in, start, i); } } } public static void moveToHead(char[] in, int first, int second) { char temp = in[first]; in[first] = in[second]; in[second] = temp; }}
- 字符串的全排列
- 字符串的全排列
- 字符串全排列问题
- 字符串全排列
- 字符串全排列问题
- 字符串全排列
- 求字符串全排列
- 求字符串全排列
- 字符串的全排列
- 字符串全排列代码
- 字符串全排列
- 字符串全排列
- 字符串全排列
- 字符串的全排列
- 字符串全排列
- 求字符串全排列
- 字符串全排列
- 字符串的全排列
- 继承ViewGroup的自定义类
- #define 定义函数简单例子
- 搜索中的剪枝技术
- 实模式->保护模式->实模式 的切换步骤
- 解析JSONArray
- 字符串全排列
- 图论之最小生成树-----克鲁斯卡尔(Kruskal)算法
- MinGW编译错误“错误:converting to execution character set:Illegal byte sequence”的解决方案
- 排序算法:计数排序
- poi3.8操作word,动态添加文字
- 奇偶排序
- 如何读取被禁用的网卡信息
- 图论之最短路径 弗洛伊德算法(Floyd)多源最短
- OpenSUSE下启动ssh和samba服务以及防火墙设置