B型樹的最大深度
回答
最大深度取決於用於操作樹的算法,以及它們的最壞情況行爲是什麼(我不知道具體情況,對不起)。假設完美平衡,近似深度爲log(N)/ log(1625)。
一棵B +樹可能會稍微深一點,因爲只有樹葉會保存鍵,但差別可能可以忽略不計。如果你認爲每個非葉子節點只需要保持指針,它也可能更淺。
m階B樹的最差情況高度爲log m/2 n。
參見:http://en.wikipedia.org/wiki/B-tree#Best_case_and_worst_case_heights
假設
- 在問題定義
具體地,我們可以指望具有每節點1625點的指針(訂單的理解的順序一些含義將其定義爲最多鍵或指針的數量,然後可能增加下面計算的樹大小) - 葉節點將存儲1625條記錄(或指向這些記錄)
......這棵樹的最小深度爲3,即它有一個根節點,一層非葉節點和一層葉節點。 ...這棵樹的最大深度也是3。
要計算深度最優化的情況下:
- 採取記錄,85,000,000,由訂單分總人數,1625
這給葉行數:52308 - 取這個葉行數,除以訂單
這就給出33;這個數字小於順序,那麼我們可以停止潛水,這是根節點中指針的數量。如果這個數字超過一個節點可以容納的數量,我們會有一個額外的水平,並會繼續分割。
我們做了兩個部門,因此樹的深度爲3
如果所有的節點不得不被分割,因此抱着平均訂單/ 2(不四捨五入)指針會發生更糟的情況。最壞情況下的計算是相似的,我們只是按照2/2的比例進行劃分,即我們的情況是812.5,產生了104,616個葉節點,在樹葉上方的水平上有129個非葉節點,最後是一個根跟蹤這些129個非葉節點。
Can BerkGüder已經給出了b樹最大深度的公式。 在你的情況下,M = 1625
但有奇數個三分球,甚至數字鍵的可能不是一個好主意,因爲 在這種情況下,你將不得不不均勻分裂的節點,當它是滿的。
相反,您應該保持每個節點的奇數個鍵和偶數個指針,以實現節點的統一拆分。
這是B +,不知道B.
85,000,000記載,在最好的情況下,都記錄在天花板(85米/ 1624)= 52340葉。這是底層,這就是爲什麼我們使用的是元素數量而不是指針數量。
爲了找到有多少層次,我們將繼續將我們發現的葉子數量與訂單分開,一路走高:天花板(52340/1625)= 33。這一次我們使用了指針的數量,因爲我們已經確定了底層,元素被存儲在哪裏,現在正在使用指向元素葉的指針。
由於這個數字並不比訂單本身大,我們在那裏停留,因爲這是根;頂層。 Root有33個指針,最多可以指向33x1625(53625)樹葉,差異不應該讓你感到困惑,因爲不是所有的樹葉都可以填充到最大。 53625葉子最多可以存儲53625x1624(87,087,000)個元素,這足以支撐我們的例子。
回到問題,只有根,和葉元素下方,所以深度爲2
希望這有助於。
B樹是一個平衡的,最壞的情況下檢索是由其高度限制。Btree容量順序中的每個節點有D。最大深度=最壞的情況下
d =二分之一千六百二十四= 812
身高< =登錄 d + 1(第(n + 1)/ 2)+1
答案是登錄 812 +1((85,000,000 + 1)/ 2)+1
- 1. 樹結構的最大深度
- 2. 尋找樹的最大深度
- 3. 查找二叉樹的最大深度
- 4. 給定樹結構的最大深度
- 5. 查找樹的最大深度
- 6. 角UI樹限制最大深度
- 7. 大小爲1的二叉樹的最大深度
- 8. Sqlite的錯誤:表達式樹太大(最大深度1000)
- 9. B +樹上最小/最大記錄數?
- 10. 表達式樹太大(最大深度1000)sqlite windows
- 11. 找到最小化樹深度的根
- 12. 如何獲得html樹的最大深度?
- 13. FETCH JOIN最大深度?
- 14. 瓶最大遞歸深度
- 15. Python:最大遞歸深度
- 16. R:深度最小生成樹
- 17. 找到樹的深度?
- 18. SQL中的樹深度
- 19. 確定樹的深度
- 20. 找到深度的樹haskell
- 21. SQLite的表達最大深度限制
- 22. CRM 2011達到的最大深度
- 23. Django的模型誤差最大遞歸深度超過
- 24. 顏色的最大數量和最大可能的深度
- 25. 使用深度樹的高度
- 26. B +樹節點大小
- 27. WCF最大讀取深度異常
- 28. 最大遞歸深度錯誤?
- 29. 超過最大遞歸深度 - Django
- 30. Tkinter - RuntimeError:超過最大遞歸深度
除了順序之外,還需要指定適合一個葉節點的[平均值]記錄數(或「元素」)。 – mjv 2010-04-05 22:20:25
如果這是作業,請標記爲這樣。 – danben 2010-04-05 22:35:51