求教,一个简单题目的算法设计 随意的一串数字比如说:1000110001->10110110001->101就是说相连的0只保留一个。怎么实现啊??麻烦高手看看,有空的话写点实现算法的伪代码都行。看着好像蛮简单的却想了一个上午都没设计出来啊!!汗颜 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 String a="1000110001"; StringBuilder sb=new StringBuilder(); boolean first=true; for(int i=0;i<a.length();i++){ if(a.charAt(i)=='0'){ if(!first) continue; else { sb.append(a.charAt(i)); first=false; } } else if(a.charAt(i)=='1'){ sb.append(a.charAt(i)); first=true; } } 逐位判断 大概意思if x(n) !=0 b(m)=x(n) m++ n++ 不知道啥算法,不过下面的方法可以完成这样的需求:String s = "1000110001"; System.out.println(s.replaceAll("[0]+", "0")); 伪码:以10001->101为例int a,b,c,d,e;a=10001/10000;b=10001/1000%10;c=10001/100%10;d=10001/10%10;e=10001%1000;相邻数字相互比较,如果相等且为0,则忽略前一个数字。再对没有忽略的数字进行顺序重组。 想看看java有没有源代码···· 求解怎么以数组形式对输入的数据进行增删查改 eclipse开发java的问题? 急......请问大家JB里怎么把我的程式打包成EXE文件啊? 怎么隐藏JTabbedPane选项卡?实现类似向导的效果? 請問Properties 對象的基類是什麼 呀 小问题,想不明白 散点 初学者问题,请指教! getclass返回一个runtime class,请问什么是runtime class? String类中的substring(String.length())怎么能取为空? 在线求简单sql语句如何写?。用户登录。会的给看下!谢谢了
StringBuilder sb=new StringBuilder();
boolean first=true;
for(int i=0;i<a.length();i++){
if(a.charAt(i)=='0'){
if(!first) continue;
else {
sb.append(a.charAt(i));
first=false;
}
}
else if(a.charAt(i)=='1'){
sb.append(a.charAt(i));
first=true;
}
}
大概意思if x(n) !=0
b(m)=x(n) m++ n++
System.out.println(s.replaceAll("[0]+", "0"));
以10001->101为例int a,b,c,d,e;
a=10001/10000;
b=10001/1000%10;
c=10001/100%10;
d=10001/10%10;
e=10001%1000;相邻数字相互比较,如果相等且为0,则忽略前一个数字。
再对没有忽略的数字进行顺序重组。