题解 | #字符统计#

字符统计

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

const readline = require('readline');

const rl = readline.createInterface({
    input: process.stdin,
    output: process.stdout
});
interface CharCount {
  char: string;
  count: number;
}

rl.on('line', function (line: string) {
  const charCount: CharCount[] = [];
  for (let i = 0; i < line.length; i++) {
    const index = charCount.findIndex((item) => item.char === line[i]);
    if (index > -1) {
      charCount[index].count++;
    } else {
      charCount.push({
        char: line[i],
        count: 1,
      });
    }
  }
  const sortCharCount = charCount.sort((a: CharCount, b: CharCount) => {
    if (a.count === b.count) {
      return a.char.charCodeAt(0) - b.char.charCodeAt(0);
    }
    return b.count - a.count;
  });
  console.log(sortCharCount.map((item) => item.char).join(''));
});

全部评论

相关推荐

点赞 评论 收藏
分享
迷茫的大四🐶:那你问他上班之后老实了没
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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