題目描述:字串壓縮。利用字元重複出現的次數,編寫一種方法,實現基本的字串壓縮功能。比如,字串aabcccccaaa會變為a2b1c5a3。若「壓縮」後的字串沒有變短,則返回原先的字串。你可以假設字串中只包含大小寫英文本母(a至z)。
解題思路:依次統計相同字元出現的次數即可
class
solution
:def
sortstring
(self, s:
str)
->
str:
alpha_map =[0
]*26for c in s:
index =
ord(c)
-ord
('a'
) alpha_map[index]+=1
res =
'' size =
len(s)
while
(len
(res)
< size)
:for i in
range(26
):if alpha_map[i]
: res +=
chr(i+97)
alpha_map[i]-=1
iflen
(res)
< size:
for i in
range(25
,-1,
-1):
if alpha_map[i]
: res +=
chr(i+97)
alpha_map[i]-=1
return res
面試題 01 06 字串壓縮
字串壓縮。利用字元重複出現的次數,編寫一種方法,實現基本的字串壓縮功能。比如,字串aabcccccaaa會變為a2b1c5a3。若 壓縮 後的字串沒有變短,則返回原先的字串。你可以假設字串中只包含大小寫英文本母 a至z 示例1 輸入 aabcccccaaa 輸出 a2b1c5a3 示例2 字串長度在...
面試題 01 06 字串壓縮
字串壓縮。利用字元重複出現的次數,編寫一種方法,實現基本的字串壓縮功能。比如,字串aabcccccaaa會變為a2b1c5a3。若 壓縮 後的字串沒有變短,則返回原先的字串。你可以假設字串中只包含大小寫英文本母 a至z 示例1 輸入 aabcccccaaa 輸出 a2b1c5a3 遍歷一次字串 時間...
面試題 01 06 字串壓縮
題目 字串壓縮。利用字元重複出現的次數,編寫一種方法,實現基本的字串壓縮功能。比如,字串aabcccccaaa會變為a2b1c5a3。若 壓縮 後的字串沒有變短,則返回原先的字串。你可以假設字串中只包含大小寫英文本母 a至z 示例1 輸入 aabcccccaaa 輸出 a2b1c5a3 示例2 輸入...