题解 | #压缩牛群编号#
压缩牛群编号
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题目,