blog/source/_posts/2020-04-01-leetcode-compress-string-lcci.md
Ching 9690121403 feat(init project): add all existing files
add all existing files

Signed-off-by: Ching <loooching@gmail.com>
2022-02-02 19:04:18 +08:00

713 B

title date tags categories
leetcode-compress-string-lcci 2020-04-01 15:51:22 leetcode

面试题 01.06. 字符串压缩

题目

遍历一遍字符串,遇到跟上一个字符不同的字符时记录上一个字符的重复长度。

class Solution:
  def compressString(self, S: str) -> str:
    if not S:
      return S
    c = ''
    prev = S[0]
    p_len = 1
    for w in S[1:]:
      if w != prev:
        c += '%s%s' % (prev, p_len)
        prev = w
        p_len = 1
      else:
        p_len += 1
    c += '%s%s' % (prev, p_len)
    if len(S) > len(c):
      return c
    return S
# 52 ms	13.8 MB