【编程题】输入一个字符串,输出该字符串中相邻字符的所有组合。
2018-03-06 22:25
369 查看
/** * 输入一个字符串,输出该字符串中相邻字符的所有组合。 举个例子,如果输入abc,它的组合有a、b、c、ab、bc、abc。(注意:输出的组合需要去重)(40分) * @param args */ public static void main(String args[]) { Scanner sc=new Scanner(System.in); String str=sc.nextLine(); Set<String> set=new HashSet<String>(); char[] cstr=str.toCharArray(); for(int i=1;i<cstr.length+1;i++){//循环 表示共有cstr长度种 长度的字符串 for(int j=0;j<cstr.length-i+1;j++){//表示这个长度字符串有多少个 StringBuilder sb=new StringBuilder(); for(int k=j;k<i+j;k++){//组装字符串 sb=sb.append(cstr[k]); } set.add(sb.toString()); } } List<String> list=new ArrayList<>(); for(String value:set){ list.add(value); } Collections.sort(list); for(int i=1;i<=cstr.length;i++) { for (String vl : list) { if(vl.length()==i) { System.out.print(vl + " "); } } } }
相关文章推荐
- Java练习题-输入一个字符串,输出该字符串中字符的所有组合(二)
- 输入一个字符串,输出该字符串中字符的所有组合
- 输入一个字符串,输出该字符串中字符的所有组合
- 输入一个字符串,输出该字符串中字符的所有组合
- 输入一个字符串,输出该字符串中字符的所有组合 C#【总结】
- 输入一个字符串,输出该字符串中字符的所有组合
- 输入一个字符串,输出该字符串中字符的所有组合。(腾讯2014笔试附加题)
- Swift - 排列组合之全排列 (输入一个字符串,输出该字符串包含的字符的所有组合)
- Java练习题-输入一个字符串,输出该字符串中字符的所有组合
- 题目:输入一个字符串,输出该字符串中字符的所有组合
- 题目:输入一个字符串,输出该字符串中字符的所有组合。举个例子,如果输入abc,它的组合有a、b、c、ab、ac、bc、abc。
- 读取一个字符串,并输出它里面字符的所有组合。
- C语言输入一个字符串,输出字符串的所有组合
- 题目:输入一个字符串,打印出该字符串中字符的所有排列。例如输入字符串abc,则输出由字符a、b、c所能排列出来的所有字符串abc、acb、bac、bca、cab和cba。
- 递归问题之一:给定一字符串,输出字符串中所有字符子串的各种组合形式,长度为一个字符到字符串的长度,忽略排序
- 编写函数fun(char *s),其功能是:把字符串中所有字符前移一个位置,串中的第1个字符移到最后。 例如,若输入字符串为:ABC123xyz ,则应输出字符串: BC123xyzA 。
- 读取一个字符串,输出它里面字符的所有组合
- C#实现输入一个字符串输出该字符串字符的所有排列方式
- 输入一个字符串,按字典序打印出该字符串中字符的所有排列。例如输入字符串abc,则打印出由字符a,b,c所能排列出来的所有字符串abc,acb,bac,bca,cab和cba。 结果请按字母顺序输出。
- Java 组合的实现- 输入一个字符,输出字符中字母组成的所有组合