Donné 3 array trié. Trouver 3 éléments, un de chaque tableau tel que a + b = c. Peut-il être fait moins de O (n^3) complexité de temps? Aidez-moi, s'il vous plaît.Recherche dans plusieurs tableaux triés et sa complexité
Répondre
Cela peut être fait dans la complexité O (N^2 * logN) en itérant à travers 2 des tableaux pour a et b et la recherche binaire pour c dans le troisième tableau.
Une autre méthode serait O (N^2) en insérant les éléments de l'un des tableaux dans un hachage, itérer pour a et b dans les deux autres tableaux et regarder si c = (a + b) existe dans le hacher.
Appelez les trois tableaux A
, B
et C
, et les éléments a
, b
et c
.
Tout en bouclant à travers les deux premiers tableaux, puisque si a
est fixe, b
peut seulement augmenter, c
peut également augmenter.
Vous n'avez donc pas besoin de faire une boucle C
chaque fois que vous avez une paire de a
et b
; il suffit de boucler C
tout en bouclant si B
fera l'affaire.
Supposons maintenant que les trois tableaux ont une longueur O (N), la complexité est en O (N^2), puisque pour chaque valeur A
, vous devez passer par tous B
et tous C
, le nombre qui est sur).
- 1. Fusion de tableaux triés, quelle est la complexité temporelle optimale?
- 2. Médiane de 5 tableaux triés
- 3. L'intersection de deux tableaux triés
- 4. Complexité de la recherche du nombre commun dans 3 tableaux
- 5. Trie complexité et la recherche
- 6. algorithme pour fusionner tableaux triés
- 7. Big-O de trouver des éléments communs dans les tableaux triés et non triés
- 8. Recherche d'un élément commun dans les tableaux
- 9. Construction d'un algorithme de complexité temporelle O (n) pour la recherche d'une valeur dans deux tableaux
- 10. Recherche dans tableau de chaînes non triés
- 11. Stockage de tableaux triés provoquant l'erreur EXC_BAD_ACCESS
- 12. Complexité temporelle de Prune et Recherche
- 13. Recherche de la médiane de deux tableaux triés. Peut-on éliminer certains contrôles d'inégalité?
- 14. Tableaux et recherche
- 15. Tableaux de commande de triés Int
- 16. Recherche de clés communes dans deux tableaux triés qui les impriment en o (sqrt n)
- 17. Calcul de l'union et l'intersection de deux tableaux non triés en O (mlogn) temps
- 18. Combinaison de plusieurs listes Triés
- 19. Gallop Temps de recherche Complexité?
- 20. Algorithme de recherche approximative dans la liste d'entiers triés
- 21. recherche dans les tableaux
- 22. Trier rapidement Moyenne et Pire complexité de la complexité?
- 23. dans plusieurs tableaux pour uitableview
- 24. Complexité temporelle des tableaux associatifs dans les scripts shell
- 25. Trouver le plus petit nombre de tableaux rotatifs triés
- 26. Gestion de tableaux triés de points 2D après division (C++)
- 27. complexité temporelle et spatiale de l'ampleur première recherche
- 28. Complexité temporelle et preuve de complexité temporelle
- 29. recherche dans les tableaux communs
- 30. TreeMap - Complexité du temps de recherche
Pour la méthode 2, existe-t-il un moyen efficace de la résoudre, étant donné que les 3 tableaux sont déjà triés? – Neel
Vous ne pouvez pas générer les paires (a, b) mieux que O (N^2) ... La recherche dans le hachage est O (1) – gabitzish