1
我對我的二叉搜索算法感到困惑。我必須使用put():4,1,3,5,2將下列整數插入給定順序的空二叉樹中。如果我在這樣做的時候採取了正確的方式,我並不是百分之百肯定的。這就是我做的事情。當我不得不插入2時,我的主要部分出現了混亂。我只是想確保我正確地做到了這一點。謝謝大家。在二叉搜索樹中插入問題
4
/\
1 5
/\
3
/
2
我對我的二叉搜索算法感到困惑。我必須使用put():4,1,3,5,2將下列整數插入給定順序的空二叉樹中。如果我在這樣做的時候採取了正確的方式,我並不是百分之百肯定的。這就是我做的事情。當我不得不插入2時,我的主要部分出現了混亂。我只是想確保我正確地做到了這一點。謝謝大家。在二叉搜索樹中插入問題
4
/\
1 5
/\
3
/
2
您是點上,和2> 1和最後
二進制搜索樹插入規則如下:
如果要插入的鍵小於當前值,將密鑰插入當前值左子樹。
如果要插入的鍵大於當前值,則將該鍵插入當前值右子樹。
如果密鑰是重複值您不會插入。
在你看來,你的回答是錯誤的,因爲你可能認爲它看起來很奇怪,作爲一個人有2作爲3的孩子。不要擔心這種怪異。只要相信算法,隨時遵守規則,並且您的插入將起作用。
我發佈了一個鏈接,你應該看看。它提供了很多數據結構的良好可視化,並且如果再次遇到類似的問題,將會對您有所幫助。該網站允許您以您想插入的任何順序構建自己的二叉搜索樹。
作爲一個方面說明:該網站還提供了許多其他數據結構可視化,如果你在將來對不同的數據結構有類似的問題。
它看起來不錯.... 2 <4 ....然後2> 1 ....然後2 <3 ....所以就變成3的左子 – gtgaxiola
除吊斜線'/'留給'1',一切似乎對我來說都是正確的:) –