Calculez le nombre d'occurrences de chaque caractère et quel caractère apparaît le plus, en tenant compte du fait que plusieurs caractères ont le même nombre d'occurrences

<!DOCTYPE html>

<html lang="fr">

<tête>

    <meta charset="UTF-8">

    <meta http-equiv="X-UA-Compatible" content="IE=edge">

    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    <title>Calculez le nombre d'occurrences de chaque caractère et quel caractère apparaît le plus</title>

</head>

<corps>

   

</body>

<type de script="texte/javascript">

//Calculer le nombre d'occurrences de chaque caractère et quel caractère apparaît le plus

let str = 'gggjjggyyyooppoooww';

fonction findString(str){

    laisser StringNum = {} ;

//Parcourez la chaîne pour obtenir l'objet {caractère : nombre d'occurrences}

    for(let i=0;i < str.length;i++){

        soit e = str.charAt(i);

        si(NumChaîne[e]){

            StringNum[e]++ ;

        }autre{

            StringNum[e] = 1 ;

        }

    }

    console.log(StringNum);

    soit {maxArr,count} = {maxArr:[],count:0} ;

//Parcourir l'objet pour trouver l'élément avec le plus d'occurrences

    for (laisser entrer StringNum) {

// S'il y a plus d'occurrences, vous devez supprimer l'élément précédent et ajouter l'élément actuel

        if (count < StringNum[clé]) {

            count = StringNum[clé] ;

            maxArr.shift();

            maxArr.push(clé);

        }

//Le nombre d'occurrences est le même, ajouter des éléments au tableau

        if (count == StringNum[key] && maxArr.indexOf(key) == -1) {

            maxArr.push(clé);

        }

    }

//Renvoie l'objet {tableau de caractères à haute fréquence, nombre maximum d'occurrences}

    retourne {maxArr,count}

}

console.log(findString(str));

</script>

</html>

 

 

Je suppose que tu aimes

Origine blog.csdn.net/weixin_46501763/article/details/128152692
conseillé
Classement