基本字符串壓縮


題目描述
利用字符重復出現的次數,編寫一個方法,實現基本的字符串壓縮功能。比如,字符串“aabcccccaaa”經壓縮會變成“a2b1c5a3”。若壓縮后的字符串沒有變短,則返回原先的字符串。

給定一個string iniString為待壓縮的串(長度小於等於10000),保證串內字符均由大小寫英文字母組成,返回一個string,為所求的壓縮后或未變化的串。

測試樣例
"aabcccccaaa"
返回:"a2b1c5a3"
"welcometonowcoderrrrr"
返回:"welcometonowcoderrrrr"

# -*- coding:utf-8 -*-
class Zipper:
    def zipString(self, iniString):
        res = ''
        current = iniString[0]
        num = 1
        for i in range(1,len(iniString)):
            if iniString[i]==current:
                num += 1
            else:
                res += current + str(num)
                current,num = iniString[i],1
        res += current + str(num)
        return res if len(res)<len(iniString) else iniString


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM