编程列出一个字符串的全字符组合情况,原始字符串中没有重复字符 例如: 原始字符串是"abc",打印得到下列所有组合情况 "a" "b" "c" "ab" "b

问题描述

请问大神这段代码哪里错了package备份;importjava.io.*;importjava.util.*;publicclasspllll备份{publicstaticvoidmain(String[]args)throwsException{BufferedReaderbr=newBufferedReader(newInputStreamReader(System.in));Stringp=br.readLine();dy(br,p);}publicstaticvoiddy(BufferedReaderbr,Stringp)throwsException{inti,j;Stringr=null,t=null;List<String>list=newArrayList<String>();Stringee=p;Stringq=null;//intk=ee.substring(0,1).length();for(i=0;i<p.length();i++){for(j=0;j<p.length();j++){if(i!=j){r=p.substring(i,i+1);t=ee.substring(j,j+1);q=r+t;list.add(q);//sop(q+"");}}}Iterator<String>iterator=list.iterator();while(iterator.hasNext()){ee=iterator.next();yy(ee,p);}}publicstaticvoidyy(Stringee,Stringp)throwsException{List<String>list=newArrayList<String>();inti,j;intk=2;Stringr=null,t=null,q=null;for(i=0;i<p.length();i++){r=p.substring(i,i+1);t=ee.substring(0,k);//asadsasddads,(0,2)就是1,2位的,每个(as)(ad)....都是1,2位的即sop(t+"");输出asadsasddadsq=r+t;list.add(q);sop(q+"");}Iterator<String>iterator=list.iterator();while(iterator.hasNext()){ee=iterator.next();if(k<p.length()+1){k++;yy(ee,p);}}}publicstaticvoidsop(Objectobj){System.out.print(obj);}}

解决方案

解决方案二:
字符串全排列问题,直接去翻算法书吧。
解决方案三:
还有中文的?

时间: 2024-10-26 23:50:38

编程列出一个字符串的全字符组合情况,原始字符串中没有重复字符 例如: 原始字符串是&amp;quot;abc&amp;quot;,打印得到下列所有组合情况 &amp;quot;a&amp;quot; &amp;quot;b&amp;quot; &amp;quot;c&amp;quot; &amp;quot;ab&amp;quot; &amp;quot;b的相关文章

js 除去字符串中的重复字符的正则表达

  <html> <head> <title>利用正则表达法除去字符串中的重复字符</title> </head> <body> <script language="网页特效"> str = "google" str1 = str.replace(/(.).*/g,"$1") document.write(str + "<br>")

三种java 去掉字符串中的重复字符函数

三种java 去掉字符串中的重复字符函数 */ public static void main(string[] args) {         system.out.println(removerepeatedchar("ddddccffgd"));     }     public static string removerepeatedchar(string s) {         if (s == null)             return s;         str

具体函数-急,求解 .. 表中有一个关键词字段,现有1000条数据,关键词中不重复的词语。

问题描述 急,求解 .. 表中有一个关键词字段,现有1000条数据,关键词中不重复的词语. 1.mysql数据库中有一张表,现有1000条数据.表中有一个关键词字段,每个关键词都是由多个词组成的数组.用"|"或","或用空格分开的.现在要求得到所有关键词中不重复的词语. 例:关键词:01. 辽宁|上海|中国|国际,亚洲,欧洲 02. 辽宁,中国,天津,山东 结果:辽宁 上海 中国 国际 亚洲 欧洲 天津 山东 数据:数据库名字:qwer 表名:qaz 数据条数:10

java中的字符数组反序-java中怎么将一个字符数组反序

问题描述 java中怎么将一个字符数组反序 新手java中怎么将一个字符数组反序,不要new数组,只能使用一个字符数组,三克油 解决方案 可以用Collection.reverse(list)呀,先把你的数组放到List里,再Collection.reverse(list),然后再从list中拿回来,示例代码: public static void main(String[] args) { String[] deal = new String[3]; deal[0] = "0"; d

关于去掉字符串中的重复字符的实现和优化

问题描述 比如说有个字符串是"ddddccffgd"打印出来的是"dcfg"怎么实现那? 解决方案 解决方案二:publicstaticvoidmain(String[]args){System.out.println(removeRepeatedChar("ddddccffgd"));}publicstaticStringremoveRepeatedChar(Strings){if(s==null)returns;StringBuildersb

求字符串中最长无重复字符的子串

题目:求一个字符串中最长的没有重复字符的子串. 方法一:穷举法,使用2重外循环遍历所有的区间,用2重内循环检验子串是否符合"无重复字符"这一要求.其中外层循环i.j 遍历所有的下标,m.n是内层循环,检查区间[i,j]是否符合要求.空间复杂度是O(1),时间复杂度O(N^4). //O(N^4)的时间复杂度 int max_unique_substring1(char * str) { int maxlen = 0; int begin = 0; int n = strlen(str)

JS使用正则表达式除去字符串中重复字符的方法_javascript技巧

本文实例讲述了JS使用正则表达式除去字符串中重复字符的方法.分享给大家供大家参考,具体如下: 这里演示一个简单的JavaScript正则表达式实例,将一串含有重复字符串中的多余字符滤除掉,请运行查看效果. 具体代码如下: <html> <head> <title>利用正则表达法除去字符串中的重复字符</title> </head> <body> <script language="javascript">

JavaScript字符串删除重复字符的方法_javascript技巧

本章节介绍一下如何删除一个字符串中重复的字符,先不管有没有实际价值,就当做是一种对算法的学习也是挺不错的. 代码如下: function dropRepeat(str){ var result=[]; var hash={}; for(var i=0, elem; i<str.length;i++){ elem=str[i]; if(!hash[elem]){ hash[elem]=true; result=result+elem; } } return result; } 以上代码中的函数可以

nsstring-OC中删除字符串中相邻的重复字符

问题描述 OC中删除字符串中相邻的重复字符 //去除字符串内的相邻的重复字符,例如:aabdaaadesff,最后结果abdadesf NSMutableString *string = [NSMutableString stringWithFormat:@"aabbssddffiieeoo"]; NSString *strIndex1 = @""; NSString *strIndex2 = @""; for (NSInteger i = 0;