/ / Raketa: Vložte nové uzly do binárneho vyhľadávacieho stromu - schéma, binárne-strom, raketa, raketa-študentské jazyky

Raketa: Vložte nové uzly do binárneho vyhľadávacieho stromu - schéma, binárne-stromové, raketové, raketové-študentské jazyky

povieme, že máme štruktúru binárneho stromu:

(define-struct tree-node (left right node))

Mám problémy s vytváraním binárneho vyhľadávacieho stromu.Môj hlavný problém je, že neviem, ako vložiť uzol do stromu alebo prepísať doľava alebo doprava v štruktúre stromu uzlov.
Povedzme, že sme v dĺžke stromu 8 a chcem vložiť nový uzol, ak je ľavý alebo pravý prázdny. Mojim problémom je, ako mám ísť tak hlboko? Je to možné rekurzívne a ak áno, ako to urobím?

môže používať len úroveň intermedia.

odpovede:

1 pre odpoveď č. 1

Designový recept od Ako navrhnúť programy odpovie na túto otázku. Časť 19.5 sa konkrétne zaoberá strommi binárneho vyhľadávania. Materiál, ktorý vám najviac pomôže, je pravdepodobne v sekciách 8 a 9. Vytiahnuť si pre vás niekoľko vlákien: Po prvé, potrebujete definíciu údajov pre binárny strom vyhľadávania. Potom musíte napísať testovacie prípady pre rôzne prípady vrátane základného prípadu (vkladanie do prázdneho uzla). Potom sa musíte riadiť šablónou spojenou s definíciou údajov.