簡體   English   中英

如何找到特定高度二叉搜索樹的節點數?

[英]How to find the number of nodes at a specific height Binary Search Tree?

如果我們有一個二叉搜索樹,我們必須找到用戶輸入高度的節點數? 當用戶輸入

h = 3

這個高度的節點數是多少?

如果您跟蹤每個節點的行,您可以運行 BFS 並在第 h 行停止。 根將有 h=1,它的每個子節點將有 h=2,依此類推。 因此,當您發現具有正確行值的節點時,您可以停止訪問它們並簡單地對其進行計數。

這是偽代碼:

計數 = 0
ENDROW 是用戶輸入的行號
將根的 rownum 設置為 1(如果取決於您的索引方式,則設置為 0)
將根放在發現的頂點隊列上
雖然隊列仍然有元素:
彈出第一個頂點 (v)
如果 v 的 rownum = ENDROW - 1:
計數 += 孩子的數量
別的:
每個孩子:
將 rownum 設置為 v 的 rownum + 1
添加到發現的頂點隊列

暫無
暫無

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

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