用户登录
用户注册

分享至

基本字符串压缩

  • 作者: 该死的异地恋D
  • 来源: 51数据库
  • 2022-08-12
class Zipper:
    def zipString(self, iniString):
        nlen = len(iniString)
        rest =[]
        i = 0
        endflag = 0
        while i < (nlen-1):
            for j in range(i+1, nlen):
                if iniString[i] == iniString[j]:
                    continue
                else:
                     rest.append((iniString[i], i, j))
                     endflag = j
                     break
            i = j

        rest.append((iniString[endflag], endflag, nlen))
        resStr = ""
        for item in rest:
            resStr += (item[0] + str(item[2]-item[1]))

        if len(resStr) >= nlen:
            return iniString
        else:
            return resStr
a = Zipper()
print a.zipString('aabcccccaaa')

b = Zipper()
print b.zipString('welcometonowcoderrrrr')

c = Zipper()
bstr= c.zipString('qwertyuioplkjhgfdsAzxcvbNM')
print type(bstr)
软件
前端设计
程序设计
Java相关