1.5

利用字符重復出現(xiàn)的次數(shù),編寫一個方法,實現(xiàn)基本的字符串壓縮功能。比如,字符串“aabcccccaaa”經(jīng)壓縮會變成“a2b1c5a3”。若壓縮后的字符串沒有變短,則返回原先的字符串。
給定一個string iniString為待壓縮的串(長度小于等于10000),保證串內(nèi)字符均由大小寫英文字母組成,返回一個string,為所求的壓縮后或未變化的串。
測試樣例
"aabcccccaaa"
返回:"a2b1c5a3"
"welcometonowcoderrrrr"
返回:"welcometonowcoderrrrr"

public class Zipper {

// /    利用字符重復出現(xiàn)的次數(shù),編寫一個方法,實現(xiàn)基本的字符串壓縮功能。比如,字符串“aabcccccaaa”經(jīng)壓縮會變成“a2b1c5a3”。若壓縮后的字符串沒有變短,則返回原先的字符串。
//    給定一個string iniString為待壓縮的串(長度小于等于10000),保證串內(nèi)字符均由大小寫英文字母組成,返回一個string,為所求的壓縮后或未變化的串。
//    測試樣例
//"aabcccccaaa"
//    返回:"a2b1c5a3"
//            "welcometonowcoderrrrr"
//    返回:"welcometonowcoderrrrr"
public String zipString(String iniString) {
    // write code here
    char[] chars=iniString.toCharArray();
    if(chars.length == 1){
        return iniString;
    }
    String newString=iniString.substring(0,1);
    int counter=1;
    for(int i=0;i<iniString.length()-1;i++){
        if(chars[i] == chars[i+1]){
            counter++;
        }else{
            newString+=counter;
            newString+=chars[i+1];
            counter=1;
        }
    }
    newString+=counter;
    return newString.length()<iniString.length()?newString:iniString;
}
    public static void main(String[] args){
    String Strings="aabcccccaaa";
        System.out.println(new Zipper().zipString(Strings));
    }
}

此題沒啥好說的

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內(nèi)容

  • JS高級教程 1.探討了JS面向?qū)ο蟪绦蛟O計和繼承的方式,以及如何在HTML等標記語言中使用它。在深入剖析了事件和...
    vernwang閱讀 934評論 0 50
  • AngularJS的優(yōu)點? 實現(xiàn)了數(shù)據(jù)、表現(xiàn)、邏輯分離擴展了HTML的功能 什么是MVC? M:Model ...
    FTD止水閱讀 1,730評論 0 1
  • 黑暗 黑暗 一直都是黑暗 找不到的方向 看不到的色彩 死寂 死寂 一直都是死寂 聽不到的美麗 感受不到的芳華
    肥仔五六七閱讀 246評論 0 0
  • 1.用戶具有連續(xù)性需求。 2.二次分享的價值很重要。 3有趣、有用、有品。 4.一定要讓用戶可以在里面創(chuàng)造內(nèi)容、安...
    天賦文案閱讀 463評論 0 0
  • 近幾年,由于電動自行車的經(jīng)濟、方便、快捷,在城市道路交通行駛中所占的比例逐年增加,而駕駛?cè)艘虿蛔袷亟煌ǚㄒ?guī)引起的交...
    七羊閱讀 231評論 0 1