基本字符串壓縮

[編程題]基本字符串壓縮

利用字符重複出現的次數,編寫一個方法,實現基本的字符串壓縮功能。比如,字符串“aabcccccaaa”經壓縮會變成“a2b1c5a3”。若壓縮後的字符串沒有變短,則返回原先的字符串。
給定一個string iniString爲待壓縮的串(長度小於等於3000),保證串內字符均由大小寫英文字母組成,返回一個string,爲所求的壓縮後或未變化的串。
測試樣例
“aabcccccaaa”
返回:”a2b1c5a3”
“welcometonowcoderrrrr”
返回:”welcometonowcoderrrrr”

Code

import java.util.*;

public class Zipper {
    public String zipString(String iniString) {
        int length=iniString.length();
        int i=0;
        String result="";
        while(i<length){
            char a=iniString.charAt(i++);
            int count=1;
            while(i<length&&iniString.charAt(i)==a){
                i++;
                count++;
            }
            result=result+a+count;
        }
        if(result.length()<length) return result;
         return iniString;
    }
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章