题解 | #字符统计#

字符统计

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

let line;

function func(line) {
    let rtnVal;
    const arr = line.split(''); 
    const obj = {}; // 哈希map,本质是一个obj
    const res = [...new Set(arr)]; // 去重
    
    // map结构保存k-v
    res.forEach(item => { 
        const count = arr.filter(el => el == item).length; 
        obj[item] = count; 
    }) 
    
    // 数组按照count大小排序
    res.sort((a,b) => { 
        if(obj[a] == obj[b]) { 
            return a.charCodeAt(0) - b.charCodeAt(0); 
        } else { 
            return obj[b] - obj[a];
        } 
    }) 
    rtnVal = res.join('');
    return rtnVal;
}

while (line = readline()) { 
    print(func(line));
}
全部评论

相关推荐

11-18 15:57
门头沟学院 Java
最终归宿是测开:这个重邮的大佬在重邮很有名的,他就喜欢打92的脸,越有人质疑他,他越觉得爽😂
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务