Programmerare använder Java för att utveckla en mängd Web och skrivbordsprogram på grund av dess plattformsoberoende portabilitet och dess fundament byggt på objektorienterad programmering begrepp . Java tillåter programmerare att bygga och manipulera komplexa datastrukturer på nästan alla system . En programmerare kan exempelvis skapa och använda en binär trädstruktur för att lagra användaruppgifter under genomförandet av programmet . Dock kanske programmerare vill radera det binära trädet , i vilket fall hon kunde ta bort varje nod , en efter en . Saker du behöver Review, Java utvecklare Kit
textredigerare eller Java Development Environment
Visa fler instruktioner
1
Utveckla radering algoritmen i ett binärt träd klass . Om en programmerare utvecklar ett binärt träd , kan hon skapa en deletion algoritm för att rensa ut alla uppgifter om alla noder är närvarande . Konturen för ett binärt träd klass som innehåller en deletion funktion kommer att se ut ungefär på följande :
class binaryTREE {
privat Node vänster , privat Node höger ,
public void add ( ) { //lägg objektet }
offentlig Node sökning ( int item) { //leta efter objekt}
offentlig Node getRoot ( ) { //retur rotnod }
public void clearList ( Node x ) { //tar bort träd } }
2
Utveckla radering algoritmen . Om " clearList ( ) " representerar den funktion som raderar ett binärt träd , då funktionen måste gå till varje nod och förklara den som en " null " referens , vilket innebär Java sophämtning kan ta bort det . Följande exempel visar hur du gör detta med hjälp av en post- order traversering , som rekursivt besöker varje nod , och raderar både sub- träd av den noden innan du raderar noden :
public void clearList ( Node x ) {
if ( x == null ) {return ;}
clearList ( x.left ) , clearList ( x.right ) , x = null ;
avkastning; }
3
Ring strykningen funktionen . För att tömma en hel binärt träd , kan programmeraren anropa funktionen med roten nod i trädet . Dessutom , kan programmeraren radera specifika sub träd från trädet genom att få en specifik nod i trädet . Förutsatt " BT " representerar ett binärt träd , visar följande exempel hur du gör detta :
BT.clearList ( BT.search ( 5 ) ) , //tar bort en sub träd under noden som representerar " 5 " ; BT.clearList ( BT.getRoot ( ) ) ; //ta bort hela trädet