Felhívjuk figyelmét, hogy házi feladat! -> Én nem keresem a közvetlen kódpéldákat, hanem néhány kedves masszírozása érveim ...
Arra kértek, hogy írjon egy függvényt, amely eltávolítja a gyökér a bináris keresés fát három dolgot: i) forgatjuk a fa jobbra ii) eltávolítjuk a gyökér a jobb részfa (ami az eredeti BST root) iii) újjáépítése a BST a gyökér új (ami a bal oldalon az eredeti fa) és a megfelelő átrendeződések a gyerekek, hogy a csomópont ... Itt van, amit én:
(define (rm-root my-bst)
(list (key (rot-r my-bst))
(left (rot-r my-bst))
(append (right (right (rot-r my-bst)))
(left (right (rot-r my-bst))))))
Amely minden nagy, elvár, hogy nem újjáépíteni a fát a gyerekek a csomópont, amelyet „támogatott”, hogy a gyökér. Tud valaki segíteni gondolok, hogy hogyan kell menni a végrehajtó? Meg kell említenem, hogy az általunk megadott Bst-as listákat és a funkció rothadás-r forgatja a BST jobbra. Köszönöm.













