(1) 一个字符串,根据输入参数m,找出字符串的m个字符的所有字符串
2015-12-22 16:23
411 查看
/** * 有一个字符串,根据输入参数m,找出字符串的m个字符的所有字符串 例如: String str ="abc", m=2 得到结果是 "ab" "ac" "bc" String str ="abcd" , m=3 得到结果是"abc" "acd" "bcd" "abd" 注:程序摘自网上 * */
public static void main(String[] args) { List<String> list = choose("abcde",3); for (String string : list) { System.out.println(string); } } public static List<String> choose(String target, int m) { List<String> resultList = new LinkedList<>(); doChoose(resultList, target, "", m, 0); return resultList; } private static void doChoose(List<String> resultList, String target, String resultStr, int m, int head) { // 递归头 if (resultStr.length() == m) { resultList.add(resultStr); return; } // 递归体 for (int i = head; i < target.length(); i++) { doChoose(resultList, target, resultStr + target.charAt(i), m, i + 1); } }
相关文章推荐
- 'No Transport' Error w/ jQuery ajax call in IE
- 你不需要jQuery(三):新AJAX方法fetch()
- 迪米特法则
- 普通程序员通向架构师的最佳路径?
- 获取手机短信
- ITMS-90096错误解决
- Shiro集成Spring
- Jetty服务器jmx监控
- iOS 8 WkWebView 网页的配置和前进,后退,js 交互和进度条的加载
- ruby--数值类(Numeric)
- js操作iframe框架时应该屡清楚的一些概念
- 数据库的优化处理方案
- OpenGL中位图的操作(glReadPixels,glDrawPixels等)
- jquery1.9 下检测浏览器类型和版本的方法
- nodejs基础 -- express框架
- 银行家算法(Banker's Algorithm)
- 初步了解委托
- mesa相关学习资源
- 接着上篇继续搭建restfull风格的webservice并返回json格式的值
- Windows10简洁的还原点创建方法 Windows10还原点怎样创建