题解 | #删除字符串中出现次数最少的字符#

删除字符串中出现次数最少的字符

http://www.nowcoder.com/practice/05182d328eb848dda7fdd5e029a56da9

笨办法也没有特别好的思路,遍历每个位置上字母出现的次数

import sys
lines = sys.stdin
for data in lines:
    data = [x for x in data.strip()]
    str_length = len(data)
    letter_count = [0 for x in range(str_length)]
    for i in range(str_length):
        for j in range(str_length):
            if data[j] == data[i]:
                letter_count[i] += 1
    min_count = min(letter_count)
    new_data = ''
    for i in range(str_length):
        if letter_count[i] != min_count:
            new_data += data[i]
    print(new_data)
            

另一个方法,遍历所有的字母,然后将其出现的数量标注在string.ascii_letter同步的数组上,如果是其对应字母总数的位置上为最小值,则替换所有字母为'',最后即可达到合理字符串

import sys
from string import ascii_lowercase
lines = sys.stdin
ascii_lowercase = [case for case in ascii_lowercase]
for data in lines:
    case_count = [0 for x in ascii_lowercase]
    data = data.strip()
    for case in data:
        index = ascii_lowercase.index(case)
        case_count[index] += 1
    min_count = min(filter(None, case_count))
    for i in range(len(case_count)):
        if case_count[i] == min_count:
            data = data.replace(ascii_lowercase[i], '')
    print(data)
全部评论

相关推荐

粗心的雪碧不放弃:纯学历问题,我这几个月也是一直优化自己的简历,后来发现优化到我自己都觉得牛逼的时候,发现面试数量也没有提升,真就纯学历问题
点赞 评论 收藏
分享
11-09 01:22
已编辑
东南大学 Java
高级特工穿山甲:羡慕,我秋招有家企业在茶馆组织线下面试,约我过去“喝茶详谈”😢结果我去了发现原来是人家喝茶我看着
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务