题解 | #字符统计#

字符统计

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

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 arr = [];
    while ((line = await readline())) {
        arr = line.split("");
    }

    // 统计各个字符出现的次数
    let obj = {};
    for (let item of arr) {
        if (obj[item]) {
            obj[item]++;
        } else {
            obj[item] = 1;
        }
    }

    // 将各个元素输出到新数组
    let sort = [];
    for (let index in obj) {
        sort.push(index);
    }

    // 对新数组进行排序
    sort.sort((a, b) => {
        let m = obj[a];
        let n = obj[b];
        if (m != n) {
            return n - m;
        } else {
            return a < b ? -1 : 0;
        }
    });
    console.log(sort.join(""));
})();

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

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