一個(gè)非空字符串,計(jì)算出現(xiàn)次數(shù)最多的字符,返回該字符及出現(xiàn)次數(shù),結(jié)果可能包含多個(gè)字符。如傳入“xyzzyxyz”,則返回:{y:3, z:3}
function maxString(str){
????var arr = str.split("");
????var obj = {};
????var obj2 = {};
????var max = 1;
????for (let i = 0; i < arr.length; i++) {
????????var item = arr[i];
????????obj[item] = (obj[item]+1) || 1;
????}
????for (var key in obj) {
????????if(obj[key]>max){
????????????max = obj[key];
????????}
????}
????for(var key in obj){
????????if(obj[key] === max){
????????????obj2[key] = max;
????????}
????}
????return obj2;
}
console.log(maxString('3uu7zzzyzzpuuu'));//{u: 5, z: 5}
判斷一個(gè)字符串中出現(xiàn)次數(shù)最多的字符,統(tǒng)計(jì)這個(gè)次數(shù)
function maxSub(str){
? ??var json = {};
????for (var i = 0; i < str.length; i++) {
? ? ? ? if(!json[str.charAt(i)]){
? ? ? ? ? ? ? ? json[str.charAt(i)] = 1;
? ? ? ? }else{
? ? ? ? ? ? ? ? json[str.charAt(i)]++;
? ? ? ? }
????};
????var iMax = 0;
????var iIndex = '';
????for(var i in json){
? ? ? ? if(json[i]>iMax){
? ? ? ? ? ? ? ? iMax = json[i];
? ? ? ? ? ? ? ? iIndex = i;
? ? ? ? }
}
var result = '出現(xiàn)次數(shù)最多的是:'+iIndex+'出現(xiàn)'+iMax+'次';
return result
}
console.log(maxSub('78uuye63u'))