1

BSTからノードを削除するにはどうすればよいですか?

Dr.Schemeでそれを行うためのアルゴリズムが必要です。

4

2 に答える 2

3

基本的に、現在持っている BST を投げて、エレメントなしで新しい BST を作成します。

これは、ツリーを再帰的に下降することで実行できます。項目がルート データムより小さい場合は、ルートと大なり分岐が現在のものからコピーされた BST を作成しますが、小なり分岐は再帰呼び出しの結果です。

ノードを追加する方法と非常に似ていますが、探していたものに到達したら、その下にある 2 つの BST をマージして結果を返します。すでにそれを行う方法については、確かに既存の質問があります。

于 2010-12-08T02:09:12.427 に答える
2

二分探索木が内容がリーフのみの単純なコンス セルを使用すると仮定し、宿題に取り組んでいると仮定すると、set-car!またはを使用set-cdr!してコンス セルの内容を変更できます。

于 2010-12-07T13:51:59.157 に答える