avancé
Refactorisation Algorithmique
Analyser un algorithme inefficace fourni en pseudo-code, identifier les goulots d'étranglement et proposer une version optimisée.
📝 Contenu du Prompt
Voici un algorithme en pseudo-code qui trie une liste d'entiers et vérifie si des doublons existent : POUR chaque élément i dans liste L : POUR chaque élément j dans liste L : SI i est égal à j ET index de i est différent de index de j : RETOURNER 'Doublon trouvé' FIN POUR FIN POUR RETOURNER 'Aucun doublon'. Analyse la complexité temporelle (Big O) de cet algorithme. Explique pourquoi il est inefficace pour de grandes listes. Propose une nouvelle version de l'algorithme en pseudo-code qui utilise une structure de données de type 'Ensemble' (Set) ou une table de hachage pour réduire la complexité temporelle. Compare les deux approches.