簡體   English   中英

二進制搜索樹中的插入vs二進制樹中的插入

[英]Insertion in Binary Search Tree vs Insertion in Binary Tree

在二叉搜索樹(BST)和二叉樹(BT)中插入有什么區別? 我知道在BST中,您將新節點的值與根進行比較,如果較小,則將其添加到左側,如果較大,則將其添加到根的右側。 BT的程序是否相同? 如果沒有,插入和移除將遵循什么程序?

看起來您對BT和BST的防御方式有誤解。 首先,您需要了解BT和BST之間的區別。

  • 二叉樹是一棵樹,該節點最多有2個子節點。 將子級存儲到左側或右側分支與子級值無關。
  • 二進制搜索樹是一個二進制樹,其中每個節點的子級以特定順序存儲。 小於父節點的子級通常存儲在左側分支上,大於或等於右側。

回答您的問題:

  • 在二叉樹中插入,您需要跟蹤每個節點的子節點不超過2個。 換句話說,要將元素添加到二叉樹中,只需將其作為子元素添加到少於2個子元素的任何節點。
  • 在搜索二叉樹中插入時,您需要跟蹤子項以特定順序存儲(子項小於父項,左邊大於或等於右邊),並且父項最多有2個子項。

根據左/右,您不可以讓父節點的子節點<=或> =。

只要將它們放置在任何位置,只要每個節點最多有2個子節點即可。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM