Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1425 connectés 

  FORUM HardWare.fr
  Programmation
  Algo

  Complexité: trier puis chercher ou chercher directement ?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Complexité: trier puis chercher ou chercher directement ?

n°2064785
charlebakh​tovsky
Posté le 19-03-2011 à 13:11:46  profilanswer
 

Bonjour,
 
Lorsqu'on a deux listes d'éléments non triés, et qu'on veux voir pour chaque élément de la 1ere liste s'il existe dans la 2eme liste (donc avec une complexité O(n*m)); Est ce qu'il serait préférable de trier la 2eme liste, puis pour chaque élément de la 1ere liste on regarde s'il existe dans la 2eme en utilisant un Binary Search par exemple ? Je ne sais pas si avec ça on aura une complexité plus importante que O(n*m) ou pas ...
 
Merci

mood
Publicité
Posté le 19-03-2011 à 13:11:46  profilanswer
 

n°2065061
olivthill
Posté le 21-03-2011 à 13:27:38  profilanswer
 

Si je comprends bien, les questions sont :
 
Q1 : Serait-il avantageux d'avoir des listes triées ?
R1 : Oui, car cela permet de faire une recherche dichotomique (nom français du "binary search" ).
Une autre solution, serait de faire une table de hachage, qui pourrait donner des résultats encore meilleurs.
 
Q2 : Faudrait-il regarder d'abord la deuxième liste avant la première, ou l'inverse ?
R2 : L'ordre ne me semble pas important.

n°2065065
Paulp
~, sweet ~
Posté le 21-03-2011 à 13:41:24  profilanswer
 

- Cas A : listes non triées :
  pour chaque élément de L1 (O(n)), on cherche s'il existe dans L2 (O(m)):
  O(n*m)
- Cas B :  
  On trie L2 (O(m log(m)))
  pour chaque élément de L1 (O(n)), on cherche s'il existe dans L2 (O(log(m))
  O((m + n) log(m)) => mieux que O(n * m)

n°2065073
esox_ch
Posté le 21-03-2011 à 14:01:06  profilanswer
 

À rajouter le fait que la réponse dépend aussi de l’implémentation.
Certaines implémentation pouvant être parallélisé alors que d'autres non


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Algo

  Complexité: trier puis chercher ou chercher directement ?

 

Sujets relatifs
chercher mail dans une chaine de caractère en php3 Noeuds , trier par un élément commun
Aller directement d'une ligne visible à une autre.Découper un bouton directement sur le design.
Trier un array et catégoriser les infos (ou requêtes multiples ?)trier une list, comparator
Trier un fichierVBA et Excel aller chercher des données sur d'autres fichiers
VBA Trier date min max d'une serie de données[résolu]Commande qui mene directement vers un répertoire donné
Plus de sujets relatifs à : Complexité: trier puis chercher ou chercher directement ?


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR