数据结构之-字符串的全排列
来源:互联网 发布:linux ssh安装包下载 编辑:程序博客网 时间:2024/05/17 06:13
任意一组字符串如“abc”,如何找出所有排列组合:
[abc, acb, bac, bca, cab, cba]
在网上找了个例子,还没看懂,先放上来。
private static String[] permutation(String orginal) {
List<String> list = new ArrayList<String>();
if (orginal.length() == 1) {
return new String[] { orginal };
} else {
for (int i = 0; i < orginal.length(); i++) {
String result = "";
String resultA = "" + orginal.charAt(i);
String leftS = orginal.substring(0, i)
+ orginal.substring(i + 1, orginal.length());
for (String element : permutation(leftS)) {
result = resultA + element;
list.add(result);
}
}
return list.toArray(new String[list.size()]);
}
}
由于组合的总数以阶乘式增长,所以原始字符串不且过长,最好是7个以下。
- 数据结构之-字符串的全排列
- 笔试面试之字符串的全排列
- 字符串的全排列
- 字符串的全排列
- 字符串的全排列
- 字符串的全排列
- 字符串的全排列
- 字符串的全排列
- 字符串的全排列
- 字符串的全排列
- 字符串的全排列
- 字符串的全排列
- 字符串的全排列
- 字符串的全排列
- 字符串的全排列
- 字符串的全排列
- 字符串的全排列
- 字符串的全排列
- 综合布线
- Windows进程/线程浅谈
- OpenJWeb 关于平台的想法
- MySQL 中文问题 “incorrect string value”解决
- 多线程应用程序开发之二 基于omniThread 的多线程应用程序示例
- 数据结构之-字符串的全排列
- 第二章 变量和基本类型
- 万能Ghost系统制作教程
- 提高浏览体验的五十个最佳FireFox扩展插件
- 【解惑】这么多技术我该怎么学
- java 属性文件(配置文件)的简单操作
- AJAX开发简略
- 网页游戏如何多开防掉线
- 日记090603