Pobierz prezentację
Pobieranie prezentacji. Proszę czekać
OpublikowałKlaudiusz Stanclik Został zmieniony 10 lat temu
1
Przeglądanie inOrder function BSTinorder(BSTNode root) if root NOT NULL BSTinorder(root.left) Print(root) BSTinorder(root.right) 2, 4, 6, 8, 9, 10, 12, 15
2
Przeglądanie preOrder function BSTpreorder(BSTNode root) if root NOT NULL Print(root) BSTpreorder(root.left) BSTpreorder(root.right) 8, 4, 2, 6, 10, 9, 12, 15
3
Przeglądanie postOrder function BSTpostorder(BSTNode root) if root NOT NULL BSTpostorder(root.left) BSTpostorder(root.right) Print(root) 2, 6, 4, 9, 15, 12, 10, 8
4
Poprzednik Poprzednikiem węzła x na drzewie BST będziemy nazywali węzeł, którego wartość jest bezpośrednio mniejsza od wartości węzła x. To znaczy, że w drzewie nie występują węzły o wartościach z przedziału a) x 1 posiada lewego potomka, to poprzednikiem będzie węzeł o największym kluczu w lewym poddrzewie x 1 x1x1 predecessor(x 1 ) b) x 2 nie posiada lewego potomka, to poprzednikiem będzie pierwszy rodzic dla którego x 2 leży w prawym poddrzewie x2x2 predecessor(x 2 ) c) Dla węzła x 3 przypadki a i b nie są spełnione. Węzeł nie ma poprzednika. Dlaczego? x3x3
5
Następnik Następnikiem węzła x w drzewie BST będziemy nazywali węzeł, którego wartość jest bezpośrednio większa od wartości węzła x. To znaczy, że w drzewie nie występują węzły o wartościach z przedziału a) x 1 posiada prawego potomka, to poprzednikiem będzie węzeł o najmniejszym kluczu w prawym poddrzewie x 1 x1x1 successor(x 1 ) b) x 2 nie posiada prawego potomka, to poprzednikiem będzie pierwszy rodzic dla którego x 2 leży w lewym poddrzewie c) Dla węzła x 3 przypadki a i b nie są spełnione. Węzeł nie ma następnika. Dlaczego? x2x2 successor(x 2 ) x3x3
6
Usuwanie węzłów A) Węzeł nie posiada dzieci – po prostu usuwamy węzeł
7
Usuwanie węzłów B) Węzeł posiada tylko lewego lub tylko prawego potomka - usuwany węzeł zastępujemy potomkiem
8
Usuwanie węzłów C) Węzeł ma obu potomków - zastępujemy losowo raz przez jego poprzednikiem, a raz przez jego następnikiem Zamiana z poprzednikiem Zamiana z następnikiem
9
Usuwanie węzłów Jak usunąć całe drzewo?
Podobne prezentacje
© 2024 SlidePlayer.pl Inc.
All rights reserved.