Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky
Rozvíjať mazanie algoritmus binárneho stromu triedy . Ak programátor vytvára binárny strom , môže si vytvoriť mazanie algoritmus vymazať všetky dáta na všetkých uzloch prítomných . Osnovy pre binárny strom triedy , ktorá zahŕňa funkcie mazania bude vyzerať podobne ako tento príklad :
triedy BinaryTree {
súkromné ľavej uzla ; právo súkromné Node ;
public void add ( ) { //pridať položku }
search verejné Node ( int item ) { //Pohľad na položku }
verejné Node getRoot ( ) { //return koreň }
public void clearList ( Node x ) { //odstráni strom } }
2
Rozvíjať mazanie algoritmus . Je - li " clearList ( ) " predstavuje funkciu, ktorá bude odstrániť binárny strom , potom funkcia musí ísť do každého uzla a vyhlásiť ho za " null " , odkaz , čo znamená , že Java garbage collection môžete ju odstrániť . Nasledujúci príklad ukazuje , ako to dosiahnuť pomocou post - order priechod , ktorý rekurzívne navštívi každý uzol , a odstráni obe čiastkové stromy tohto uzla pred odstránením uzla :
public void clearList ( Node x ) {
if ( x == null ) { return ; }
clearList ( x.left ) ; clearList ( x.right ) , x = null ;
návrat ; }
3
Volanie funkcie mazania . Ak chcete vyprázdniť celý binárny strom , programátor mohol volať funkcie pomocou koreňový uzol stromu . Tiež programátor mohol odstrániť určité čiastkové stromy zo stromu tým , že konkrétny uzol v strome . Za predpokladu , že " BT " predstavuje binárny strom , Nasledujúci príklad ukazuje , ako to dosiahnuť :
BT.clearList ( BT.search ( 5 ) ) ; //odstráni vedľajšie strom v uzle reprezentujúceho " 5 " ; BT.clearList ( BT.getRoot ( ) ) ; //odstrániť celý strom