题解 | #压缩牛群编号#

压缩牛群编号

https://www.nowcoder.com/practice/db9dd240e5f54b6d8eeadfbd9b7f865f

考察知识点:字符串计算各个元素数量,字符串遍历,添加元素到列表里

题目分析

1、首先获取一个去重之后的列表,利用该列表去计算元素在原来列表里的数量;

2、得到数量之后,判断该数是否为1,为1则不简写,不唯一则遍历新的count,将count的拆分输出

详细解析在代码注释里

采用的编程语言:Python

完整的编码代码:如下所示

#
# 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
#
#
# @param chars char字符型一维数组
# @return char字符型一维数组
#
class Solution:
    def compress(self, chars: List[str]) -> List[str]:
        res, char, Lis = [], [], []
        # 去重
        for x in chars:
            if x not in res:
                res.append(x)
        # 遍历数组
        for i in res:
            count = 0
			#计算元素出现的次数
            for j in chars:
                if i == j:
                    count = count + 1
					#追加元素到要返回的数组里
            Lis.append(i)
			判断数量是否为1
            if count!=1:
			判断数量不为1且长度为1位,追加数量到要返回的数组里
                if len(str(count)) == 1:
                    Lis.append(str(count))
                else:
				  判断数量长度大于1位,循环将count输出到返回的数组里
                    for x in str(count):
                        Lis.append(x)
        return Lis

面试高频TOP202解析 文章被收录于专栏

采用Java,C,Python等方法去解答面试高频TOP202题目,

全部评论

相关推荐

投递美团等公司10个岗位
点赞 评论 收藏
转发
安徽省移动公司 IT部门 一年税前14w
点赞 评论 收藏
转发
点赞 收藏 评论
分享
牛客网
牛客企业服务