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

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

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

const rl = require("readline").createInterface({ input: process.stdin });
var iter = rl[Symbol.asyncIterator]();
const readline = async () => (await iter.next()).value;

void async function () {
    // Write your code here
    let myMap = new Map()
    while(line = await readline()){       
        for(let i = 0; i < line.length; i++) {
            let char = line[i]
            if (myMap.has(char)) {
                // 如果有这个键,则出现次数加1
                myMap.set(char, myMap.get(char) + 1)
            } else {
                myMap.set(char, 1)
            }
        }
        // 获得map中最小的那个值
        let min = Infinity
        myMap.forEach((val) => {
            min = Math.min(min, val)
        })

        // 获取最小次数的字母
        let arr = []
        myMap.forEach((val, key) => {
            if (val == min) {
                arr.push(key)
            }
        })
        // 删除字符串中对应的字符
        arr.forEach(item => {
            line = line.replaceAll(item, '')
        })
        console.log(line)
        
    }


}()

全部评论

相关推荐

不愿透露姓名的神秘牛友
03-20 12:46
瘦嘟嘟右卫门:百度文库网盘的暑期也没约面吗
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务