题解 | #字符统计#

字符统计

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

使用map并且对双层数组排序

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 map = new Map()
    while(line = await readline()){
        line = [...line]
        for(let c of line) {
            if(map.has(c)) {
                map.set(c, map.get(c) + 1)
            } else {
                map.set(c, 1)
            }
        }
        let arr = Array.from(map)
        arr.sort((a,b) => {
            return a[1] === b[1] ? a[0].charCodeAt() - b[0].charCodeAt() : b[1] - a[1]
        })
        let res = ''
        for(let pair of arr) {
            res = res +  pair[0]
        }
        console.log(res)
    }
}()

全部评论

相关推荐

04-03 12:09
東京大学 C++
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务