请教对字符串进行消除处理java

simpleqihao 2018-03-09 10:24:17
请教各位大神给一个优解,java遇到的一个题,有在博客上搜到该题算法,想了解一下大神们的看法。
输入一个字符串进行处理,连续相同的两个字符消除,输出最终结果字符串,
输出字符顺序和输入的顺序相同,大致的字符串处理如图片所示,如果有不清楚的地方我再补充:


...全文
535 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
「已注销」 2018-03-11
  • 打赏
  • 举报
回复
引用 1 楼 rickylin86 的回复:
用正则处理很简单和直接. 当然也有其他的一些算法和操作方法,但是感觉都需要过多的顾及和考虑.

public class Test{
	public static void main(String[] args){
		String content = "aaabccddd";
		String temp = "";
		boolean flag = true;
		while(flag){
			temp = content.replaceAll("(.)\\1","");
			if(temp.equals(content)){
				flag = false;
			}else{
				content = temp;
			}
		}

		System.out.println(content);
	}
}
之前没有想到过正则,看到的算法是在数组操作用游标比对
rickylin86 2018-03-10
  • 打赏
  • 举报
回复
用正则处理很简单和直接. 当然也有其他的一些算法和操作方法,但是感觉都需要过多的顾及和考虑.

public class Test{
	public static void main(String[] args){
		String content = "aaabccddd";
		String temp = "";
		boolean flag = true;
		while(flag){
			temp = content.replaceAll("(.)\\1","");
			if(temp.equals(content)){
				flag = false;
			}else{
				content = temp;
			}
		}

		System.out.println(content);
	}
}

62,628

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧