“Trouvez le nombre d'occasions de chaque caractère et imprimez-le dans l'ordre décroissant des occurrence, si 2 ou plus se produit le même nombre de fois, imprimez les nombres dans l'ordre décroissant.” Réponses codées

Trouvez le nombre d'occasions de chaque caractère et imprimez-le dans l'ordre décroissant des occurrence, si 2 ou plus se produit le même nombre de fois, imprimez les nombres dans l'ordre décroissant.

function asc(arr) {
    let map = new Map
    let c = 1;
    for (let i = 0; i < arr.length; i++) {
        if (map.has(arr[i])) {
            map.set(arr[i], map.get(arr[i]) + 1)
        }
        else {
            map.set(arr[i], c)
        }
    }
    let narr = [...map];
    let tmp;
    for (i = 0; i < narr.length; i++) {
        for (j = i + 1; j < narr.length; j++) {
            if (narr[i][1] > narr[j][1]) {
                tmp = narr[i];
                narr[i] = narr[j];
                narr[j] = tmp;
            }
            else if ((narr[i][1] = narr[j][1])) {
                if (narr[i][0] > narr[j][0]) {
                    tmp = narr[i];
                    narr[i] = narr[j];
                    narr[j] = tmp;
                }
            }
        }
    }
    return narr;
}
arr = [3, 8, 7, 4, 7, 3, 4];
console.log(asc(arr));
Pleasant Pintail

Trouvez le nombre d'occasions de chaque caractère et imprimez-le dans l'ordre décroissant des occurrence, si 2 ou plus se produit le même nombre de fois, imprimez les nombres dans l'ordre décroissant.

function sortByOccurences(arr) {
    // create a new map
    let map = new Map();
    let count = 1;
    let len = arr.length;
    // set the element and count in map
    for (let i = 0; i < len; i++) {
        // if map have this element then count + 1
        if (map.has(arr[i])) {
            map.set(arr[i], map.get(arr[i]) + 1)
        }
        // else set the count as 1
        else {
            map.set(arr[i], count)
        }
    }
    // assign the map as 2D array
    let newArray = [...map];
    //sort the elements in decending order
    newArray.sort((a, b) => (b[0] - a[0]))
    //sort the occurence in decending order
    newArray.sort((a, b) => (b[1] - a[1]))
    let result = newArray.map(x => x[0])
    return result;
}

let arr = [3, 3, 4, 4, 7, 8]
console.log(sortByOccurences(arr));
Achyuta Pradhan

Réponses similaires à “Trouvez le nombre d'occasions de chaque caractère et imprimez-le dans l'ordre décroissant des occurrence, si 2 ou plus se produit le même nombre de fois, imprimez les nombres dans l'ordre décroissant.”

Questions similaires à “Trouvez le nombre d'occasions de chaque caractère et imprimez-le dans l'ordre décroissant des occurrence, si 2 ou plus se produit le même nombre de fois, imprimez les nombres dans l'ordre décroissant.”

Parcourir les réponses de code populaires par langue

Parcourir d'autres langages de code