55 lines
2.2 KiB
Java
55 lines
2.2 KiB
Java
import java.util.HashMap; // Importation de HashMap
|
|
import java.util.Map; // Importation de Map
|
|
|
|
public class exo3 {
|
|
public static void main(String[] args) {
|
|
// Exemple de tableau d'objets
|
|
Object[] tableau = {1, "apple", 2, "banana", "apple", 3, 2, "banana", "banana"};
|
|
|
|
// Appel de la méthode pour trouver l'élément le plus fréquent
|
|
Object elementFrequent = trouverElementFrequent(tableau);
|
|
|
|
// Affichage du résultat
|
|
System.out.println("L'élément le plus fréquent est : " + elementFrequent);
|
|
}
|
|
|
|
public static Object trouverElementFrequent(Object[] tableau) {
|
|
Map<Object, Integer> compte = new HashMap<>(); // Dictionnaire pour compter les occurrences
|
|
int maxCount = 0; // Compteur maximal
|
|
Object elementFrequent = null; // Élément le plus fréquent
|
|
|
|
for (int i = 0; i < tableau.length; i++) {
|
|
Object element = tableau[i];
|
|
// Incrémenter le compteur pour l'élément actuel
|
|
compte.put(element, compte.getOrDefault(element, 0) + 1);
|
|
|
|
// Vérifier si cet élément a une fréquence plus élevée ou est le premier en cas d'égalité
|
|
if (compte.get(element) > maxCount || (compte.get(element) == maxCount && elementFrequent == null)) {
|
|
maxCount = compte.get(element);
|
|
elementFrequent = element;
|
|
}
|
|
}
|
|
|
|
return elementFrequent; // Retourner l'élément le plus fréquent
|
|
}
|
|
}
|
|
|
|
/*
|
|
mportations :
|
|
|
|
HashMap pour stocker les occurrences des éléments.
|
|
Map pour la déclaration de la variable.
|
|
|
|
Méthode principale :
|
|
|
|
Un tableau d'exemple tableau est créé contenant différents types d'objets.
|
|
La méthode trouverElementFrequent est appelée pour obtenir l'élément le plus fréquent.
|
|
|
|
Méthode trouverElementFrequent :
|
|
|
|
Crée un HashMap pour compter les occurrences de chaque élément.
|
|
Utilise une boucle pour parcourir le tableau, mettre à jour les compteurs et vérifier si l'élément actuel est le plus fréquent.
|
|
En cas d'égalité, le premier élément rencontré avec cette fréquence est privilégié.
|
|
|
|
Retourne l'élément le plus fréquent : La méthode renvoie l'élément qui apparaît le plus souvent dans le tableau.
|
|
*/ |