字元統計及重排[100 分]
題目描述
給出⼀個僅包含字母的字元串,不包含空格,統計字元串中各個字母(區分⼤⼩寫)出現的次數,并按照字母出現次數從⼤到⼩的順序輸出各個字母及其出現次數。如果次數相同,按照⾃然順序進行排序,且⼩寫字母在⼤寫字母之前。
輸入描述
輸⼊⼀⾏,為⼀個僅包含字母的字元串。
輸出描述
按照字母出現次數從⼤到⼩的順序輸出各個字母和字母次數,⽤英⽂分号分隔,注意末尾的分号;字母和次數間⽤英⽂冒号分隔。
示例 1
- 輸入
xyxyXX
- 輸出
x:2;y:2;X:2
解題思路
var charStatustic = function (str) {
let strArr = str.split("");
strArr = [...new Set(strArr)];
for (let i = 0; i < strArr.length; i++) {
let sum = 0;
for (let j = 0; j < str.length; j++) {
if (strArr[i] === str[j]) {
sum++;
}
}
strArr[i] = strArr[i] &