栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

查找所有与给定字符串相加的子字符串组合

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

查找所有与给定字符串相加的子字符串组合

这是一种方法:

static List<List<String>> substrings(String input) {    // base case: There's only one way to split up a single character    // string, and that is ["x"] where x is the character.    if (input.length() == 1)        return Collections.singletonList(Collections.singletonList(input));    // To hold the result    List<List<String>> result = new ArrayList<>();    // Recurse (since you tagged the question with recursion ;)    for (List<String> subresult : substrings(input.substring(1))) {        // Case: Don't split        List<String> l2 = new ArrayList<>(subresult);        l2.set(0, input.charAt(0) + l2.get(0));        result.add(l2);        // Case: Split        List<String> l = new ArrayList<>(subresult);        l.add(0, input.substring(0, 1));        result.add(l);    }    return result;}

输出:

[java][j, ava][ja, va][j, a, va][jav, a][j, av, a][ja, v, a][j, a, v, a]


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/383050.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号