[ MACTEPx @ 18.05.2009. 08:53 ] @
kako se rekurzivno izbacuje neki cvor iz binarnog stabla sa svim 'podcvorovima'? radim u javi ali moze neki kod i u ostalim jezicima.
[ mmix @ 18.05.2009. 09:41 ] @
Cvor se uopste ne izbacuje rekurzivno, dovoljno je ta odgovarajuci pointer/referencu u parentu null-ujes i cela podgrana vise nece biti deo drveta.

Da ne mislis mozda na cleanup, tj rekurzivno dealociranje svih otkinutih grana? evo ti pseudo pa ti pretabaj

Code:
void deleteSubTree(subRoot) {
    if (subRoot != null) {
        deleteSubTree(subRoot.left);
        deleteSubTree(subRoot.right);
        delete subTree;
    }
}
[ MACTEPx @ 18.05.2009. 11:03 ] @
e tacno, mislim da mi je bas to trebalo, jer kad obrisem pokazivace na cvor, onda on nije vise deo drveta ali ostaje u memoriji, a trebalo mi je nesto da ostale podcvorove izbaci iz memorije
[ cassey @ 18.05.2009. 23:25 ] @
Citat:
MACTEPx: e tacno, mislim da mi je bas to trebalo, jer kad obrisem pokazivace na cvor, onda on nije vise deo drveta ali ostaje u memoriji, a trebalo mi je nesto da ostale podcvorove izbaci iz memorije


Pogledaj sta je Garbage Collector. Videces da samo brisanje reference unistava objekat u memoriji.