0

bst のデータを並べ替えられた配列に保存する必要がある場合、ConvertToCompleteBST関数は現在のツリーをクリアし、配列を使用して、各呼び出しに中間値を挿入することにより、値を再帰的に再挿入します。

InsertRecursively(data_array,size);

たとえば、配列が [5 7 10 12 16 18 30] の場合

thenInsertRecursively([5 7 10 12 16 18 30],7)が最初に呼び出され、

真ん中が12なので、12 が最初にツリーに挿入されます。次に、再帰呼び出しで、同じことを行いますが、

InsertRecursively([5 7 10],3)
InsertRecursively([16 18 30],3)

次に、ノード7と他の 2 つの再帰呼び出しInsertRecursively([5 7 10],3)を挿入します。

InsertRecursively([5],1) >> ノード 5 の挿入につながる

InsertRecursively([10],1)>> ノード 10 の挿入につながる

size が 1 の場合、再帰呼び出しを停止します。

insertRecursively 関数を実装する方法がわかりません

4

0 に答える 0