python 算法题-[字符串压缩】

/*
 * 利用字符重复出现的次数,编写一个方法,实现基本的字符串压缩功能。
 * 比如,字符串“aabcccccaaa”经压缩会变成“a2b1c5a3”。若压缩后的字符串没有变短,则返回原先的字符串。
 */

def str_zip(s):
    """
  利用字符重复出现的次数,编写一个方法,实现基本的字符串压缩功能。
  比如,字符串“aabcccccaaa”经压缩会变成“a2b1c5a3”。若压缩后的字符串没有变短,则返回原先的字符串。
    """
    len_str = len(s)
    l = ""
    num_n = 1
    for i in range(len_str-1):
        if s[i] == s[i+1]:
             num_n+=1
        else:
             l+= s[i] + str(num_n)
             num_n = 1
    l+= s[-1]+str(num_n) 
    return l

if __name__ == '__main__':
    print(str_zip("aaabbaa"))

你可能感兴趣的:(python,java,服务器)