"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Leetcode – Top Interview –. Élément majoritaire

Leetcode – Top Interview –. Élément majoritaire

Publié le 2024-11-25
Parcourir:996

Leetcode — Top Interview –. Majority Element

C'est un problème simple avec la description :

Étant donné un tableau nums de taille n, renvoie l'élément majoritaire.

L'élément majoritaire est l'élément qui apparaît plus de ⌊n / 2⌋ fois. Vous pouvez supposer que l'élément majoritaire existe toujours dans le tableau.

Exemple 1 :

Entrée : nombres = [3,2,3]
Sortie : 3

Exemple 2 :

Entrée : nums = [2,2,1,1,1,2,2]
Sortie : 2

Contraintes :

n == nums.longueur
1 -109

À première vue, on penserait à créer une carte, puis à rassembler celle qui apparaît le plus.

En y réfléchissant bien, si vous pouviez trier et obtenir celui qui apparaît le plus, cela ferait l'affaire.

Et avec cela, il existe un moyen encore plus simple. Si vous lisez attentivement la description, vous comprendrez qu'un élément majoritaire est celui qui apparaît sur plus de la moitié du tableau.

Dans cet esprit, si vous le triiez et récupériez l'index du milieu, cela résoudrait le problème :

class Solution {
    public int majorityElement(int[] nums) {

        // sort
        Arrays.sort(nums);

        // if by majority element it means that appears more than half of nums size
        // then picking the middle element would be the one that's a majority element
        return nums[nums.length / 2];
    }
}

Durée d'exécution : 4 ms, plus rapide que 54,53 % des soumissions en ligne Java pour Majority Element.

Utilisation de la mémoire : 53,5 Mo, soit moins de 9,23 % des soumissions en ligne Java pour Majority Element.

C'est ça! S'il y a autre chose à discuter, n'hésitez pas à laisser un commentaire, si j'ai manqué quelque chose, faites-le-moi savoir afin que je puisse mettre à jour en conséquence.

À la prochaine publication ! :)

Déclaration de sortie Cet article est reproduit à: https://dev.to/bendlmp/leetcode-top-interview-150-169-majority-element-4a1d?1 S'il y a une contrefaçon, veuillez contacter [email protected] pour le supprimer.
Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3