字串壓縮

2021-10-07 18:04:30 字數 1024 閱讀 3893

利用字元重複出現的次數,編寫乙個方法,實現基本的字串壓縮功能。比如,字串「aabcccccaaa」經壓縮會變成「a2b1c5a3」。若壓縮後的字串沒有變短,則返回原先的字串。

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

測試樣例

「aabcccccaaa」

返回:「a2b1c5a3」

「welcometonowcoderrrrr」

返回:「welcometonowcoderrrrr」

取第乙個字串為temp,從第二個開始依次遍歷字串,如果和前面一樣,則num+1,如果不相等,則把前面的字串和num儲存到乙個空串中,重置num和temp。注意迴圈結束,還要做一次把前面的字串和num儲存到結果串中。

class

zipper

:def

zipstring

(self, inistring)

: lenstr =

len(inistring)

temp = inistring[0]

num =

1 res =

''for i in

range(1

,lenstr)

:if inistring[i]

!= temp:

res += temp+

str(num)

num =

1 temp = inistring[i]

else

: num +=

1 res += temp+

str(num)

iflen

(res)

>

len(inistring)

:return inistring

else

:return res

字串 字串壓縮

標題 字串壓縮 類別字串處理 時間限制 1s記憶體限制 1000kb 問題描述 有一種簡單的字串壓縮演算法,對於字串中連續出現的同乙個英文本元,用該字元加上連續出現的次數來表示 連續出現次數小於3時不壓縮 例如,字串aaaaabbbabaaaaaaaaaaaaabbbb可壓縮為a5b3aba13b4...

字串壓縮

include using namespace std 題目描述 通過鍵盤輸入一串小寫字母 a z 組成的字串。請編寫乙個字串壓縮程式,將字串中連續出席的重複字母進行壓縮,並輸出壓縮後的字串。壓縮規則 1.僅壓縮連續重複出現的字元。比如字串 abcbc 由於無連續重複字元,壓縮後的字串還是 abcb...

字串壓縮

通過鍵盤輸入一串小寫字母 a z 組成的字串。請編寫乙個字串壓縮程式,將字串中連續出席的重複字母進行壓縮,並輸出壓縮後的字串。壓縮規則 1 僅壓縮連續重複出現的字元。比如字串 abcbc 由於無連續重複字元,壓縮後的字串還是 abcbc 2 壓縮欄位的格式為 字元重複的次數 字元 例如 字串 yyy...