exo 3 tp generecite

This commit is contained in:
EmmanuelTiamzon
2025-11-07 16:39:12 +01:00
parent aa9142a9c4
commit 1ccfe90def

View File

@@ -0,0 +1,34 @@
import java.util.*;
public class Frequence {
public static <T> T elementPlusFrequent(T[] tab) {
java.util.Map<T, Integer> compteur = new java.util.HashMap<>();
for(T element : tab) {
compteur.put(element, compteur.getOrDefault(element, 0) + 1); // Ici on compte les occurrences de chaque élément
}
// Maintenant on doit trouver l'element le plus frequent (en respectant l'ordre du tableau)
T resultat = null;
int maxFrequence = 0;
for(T element : tab) {
int frequence = compteur.get(element);
if(frequence > maxFrequence) {
maxFrequence = frequence;
resultat = element;
}
}
return resultat;
}
public static void main(String[] args) {
// On test d'abord avec un type String
String[] mots = {"un", "deux", "trois", "un", "deux", "un"};
System.out.println("Le mot le plus frequent est : " + elementPlusFrequent(mots));
// On test ensuite avec un type Integer
Integer[] nombres = {1, 2, 2, 3, 1, 2};
System.out.println("le nb plus frequent : " + elementPlusFrequent(nombres));
}
}