首页 > 代码库 > Encode Adjacent Letters
Encode Adjacent Letters
Encode a string by counting the consecutive letter.
(i.e., "aaaabbxxxyyz" might become "a4b2x3y2z1").
分析:
这个问题是一个基本的数据压缩算法,将相邻的字符计数存储。解法没有什么特别需要注意的地方,按部就班的实现代码就可以了。
class Solution: # @param s, letters as string # @return an encoded string def encode(self, s): if not s or len(s) == 0: return "" val = "" prev = s[0] count = 1 for c in s[1:]: if c == prev: count += 1 else: val += prev + str(count) prev = c count = 1 val += prev + str(count) return valif __name__ == ‘__main__‘: s = Solution() assert s.encode("") == "" assert s.encode("aaaabbxxxyyz") == "a4b2x3y2z1" assert s.encode("aaaaaaaaaaab") == "a11b1" print ‘PASS‘
小结:
extends下是目前不在LeetCode但是我遇到的有趣的程序问题。
Encode Adjacent Letters
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。