Z reguły w węźle przechowuje się więcej informacji, a wartość węzła ma jedynie posłużyć do ich wyszukiwania – dlatego bywa nazywana kluczem. Aby znaleźć węzeł drzewa, w którym jest wartość x, porównujemy x z wartością k w korzeniu i w zależności od wyniku porównania:
- x = k – cieszymy się, że znaleźliśmy
- x < k – szukamy w lewym poddrzewie
- x > k – szukamy w prawym poddrzewie
Jeśli dojdziemy w ten sposób do pustego drzewa – to znaczy, że elementu nie ma w drzewie. Nowe elementy wstawiamy w liściach – postępując podobnie jak przy wyszukiwaniu. Nieco gorzej jest z usuwaniem – po znalezieniu węzła
x, który chcemy usunąć, należy rozpatrzyć różne przypadki:
- jeśli x nie ma synów – po prostu usunąć
- jeśli x ma tylko jednego syna – zastąpić go synem
- jeśli x ma dwóch synów:
- znaleźć jego następnik y, (najbardziej lewy element w prawym poddrzewie x)
- zastąpić zawartość węzła x przez zawartość węzła y
- wyciąć węzeł y (syn y stanie się synem swojego dziadka)
Pesymistyczny koszt każdej z tych operacji na drzewie BST o
n węzłach zależy od wysokości drzewa i wynosi:
- log2(n) – dla drzewa zrównoważonego, oraz
- n – dla drzewa, w którym każdy z węzłów oprócz liścia ma tylko jednego syna.
Dlatego w praktyce często lepiej zastosować drzewo poszukiwań binarnych o dodatkowych właściwościach – np. drzewo AVL lub drzewo czerwono-czarne – które pozwalają wykonywać operacje wstawiania i usuwania węzłów z zachowaniem zrównoważenia.