WAVL(弱AVL)和紅黑樹有什麼區別? 是否有一個特定的原因使用WAVL而不是RB?WAVL(弱AVL)和紅黑樹之間有什麼區別?
回答
WAVL樹試圖結合AVL樹和紅黑樹的最佳特徵。只要插入WAVL樹就會構建與AVL樹相同的樹 - 這種樹比紅黑樹更加平衡,因此WAVL樹可以在紅黑樹變得更不平衡的情況下更好地執行。 WAVL中的刪除比刪除AVL樹要簡單一些,因爲WAVL刪除只執行1或2次旋轉,而不是可能一直停留在根目錄。
這很簡單,但沒有什麼可以解釋WAVL在網絡上可以幫助我們驗證他們算法的真相。 –
我想我們可以在網上找到關於WAVL樹的所有信息。你想驗證什麼道理?關於它們的原始論文涵蓋了所有細節,其性能與Ben Pfaff 2004年論文(AVL比紅黑色快20%)涵蓋的AVL樹相似。 –
謝謝。我希望閱讀詳細解釋所有規則的原始文件。你也提到AVL比紅黑樹快20%。它對我來說很奇怪,因爲有很多變量會影響性能,比如使用遞歸或迭代,生成新節點的方式(從銀行或不),你做什麼:讀取vs插入vs刪除以及何時。這兩個實現共享相同的優化。如果您有任何問題,我會很高興在您的答案中包含參考(鏈接)。似乎無法訪問? –
- 1. 紅黑樹和AVL樹之間的區別
- 2. 堆和紅黑樹之間有什麼區別?
- 3. AVL和紅黑樹
- 4. 短弱參考和長弱參考之間有什麼區別?
- 5. Avl樹和紅黑樹的比較
- 6. 繪圖二叉樹(AVL和紅黑樹)
- 7. 紅黑樹和單個runqueue有什麼區別?
- 8. Splay樹的Zig-zag和AVL樹的旋轉有什麼區別?
- 9. 爲什麼avl樹比紅黑樹搜索更快?
- 10. 將AVL樹轉換爲紅色黑樹
- 11. AVL樹和斜紋樹的區別
- 12. 強和弱IBOutlets之間的區別
- 13. 弱和unsafe_unretained之間的區別
- 14. 「層」和「層」之間有什麼區別?
- 15. Tableau和QlikView之間有什麼區別
- 16. Microsoft.CompilerServices.AsyncTargetingPack和Microsoft.Bcl.Async之間有什麼區別?
- 17. @Entity和@embeddable之間有什麼區別
- 18. ContentObservable和DataSetObservable之間有什麼區別?
- 19. touchmove和gesturechange之間有什麼區別?
- 20. :notification.flags和notification.defaults之間有什麼區別?
- 21. proc和lambda之間有什麼區別?
- 22. :: after和after之間有什麼區別?
- 23. read()和io.read()之間有什麼區別?
- 24. Request()和Request.Form()之間有什麼區別?
- 25. WebServiceBinding.EmitConformanceClaims和WebServiceBinding.ConformanceClaims之間有什麼區別?
- 26. getA()和this.getA()之間有什麼區別?
- 27. (int)和intval()之間有什麼區別?
- 28. set_value和= pandas之間有什麼區別
- 29. * zoom和zoom之間有什麼區別?
- 30. {0}和「」之間有什麼區別?
嗨,歡迎來到堆棧溢出。請注意,對這個問題的回答可能會導致不完全基於事實的答案,或者由於個人偏好而產生偏見的答案。可能存在不同的使用情況,其中每個選項將更好地服務於給定的目的。爲了獲得關於這個問題的答案,考慮在問題中增加一些更多的細節,說明你想如何使用這個問題,以及爲什麼你覺得每個選項要麼滿足你的需要,要麼不滿足。我希望你能夠找出哪個選項適合你:) –