Mieszanie za pomocą drzew wyszukiwania zamiast list


11

Walczę z haszowaniem i materiałem do wyszukiwania binarnego. Przeczytałem, że zamiast używać list do przechowywania wpisów z tymi samymi wartościami skrótu, możliwe jest również użycie drzew wyszukiwania binarnego. I staram się zrozumieć, jaki jest najgorszy i średni przypadek wykonania operacji

  1. insert,
  2. find i
  3. delete

jest wart. średni przypadek. Czy poprawiają się w odniesieniu do list?


Jeśli masz dostęp do rygorystycznej analizy środowisk uruchomieniowych tablic mieszających z łańcuchem liniowym (tj. Listy liniowe), zamień tę część, w której średnie koszty na listach liniowych są podłączone, ze średnimi wynikami przypadków implementacji zrównoważonego drzewa wyszukiwania. Reszta to mechanika. (Oczywiście pomaga.)
Raphael

Odpowiedzi:


4

O(1)O(n)O(n)O(n)O(logn)O(n)

O(logn)


1
To wszystko prawda, ale nie widzę odpowiedzi na postawione pytanie.
rgrig

To nie było to samo pytanie w ogóle w tym czasie. (Nawet historia edycji nie ma oryginalnego pytania. Dziwne.) Mogłabym zaktualizować swoją odpowiedź, ale stałaby się zbędna z odpowiedzią Gillesa.
jmad

4

O(n)nnn1=Θ(n)n1O(n)O(1)

O(logn)

O(1)

nn/2Θ(n)Θ(logn)


2
„ze średnim rozkładem danych” powinien czytać „z wystarczająco losową funkcją skrótu”
JeffE
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.