从一个字符串中剔除连续的字符,只留一个。
生活随笔
收集整理的這篇文章主要介紹了
从一个字符串中剔除连续的字符,只留一个。
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
有兩種解決方法。
第一種,從前往后遍歷,如果后面的字符與當前的字符相同,就直接跳過,如果不相同,就停止。代碼如下:
private String doFilter(String text) {String newText = "";int i = 0;int j = i+1;newText += text.charAt(i);while(j < text.length()){if(text.charAt(i) == text.charAt(j)){j++;}else {i = j;j=i+1;newText += text.charAt(i);}}return newText;}第二種,是只比較當前字符與前一個字符是否相等,如果相等就刪除前一個字符,不相等則直接向下遍歷。代碼如下:
private String doFilter2(String text) {StringBuffer newText = new StringBuffer(text);for(int i=1;i<newText.length();i++){if(newText.charAt(i) == newText.charAt(i-1)){newText.deleteCharAt(i-1);i--;}}return newText.toString();}兩種方法的時間復雜度與空間復雜度相同。
?
轉(zhuǎn)載于:https://www.cnblogs.com/zhangmiao14/p/6379024.html
總結(jié)
以上是生活随笔為你收集整理的从一个字符串中剔除连续的字符,只留一个。的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: JavaWeb之国际化
- 下一篇: 使用redis的发布订阅模式实现消息队列