簡體   English   中英

.NET內置AVL樹?

[英].NET Built-in AVL-Tree?

.NET庫中是否有內置的AVL樹?

我搜索但沒有找到任何。

  • 如果有,那么在哪里? 什么名稱空間
  • 如果沒有,C#中的AVL樹有什么好的實現嗎?
  • 如果還沒有! 那么有一個簡單的方法來完成它嗎? 我知道它是如何工作的,並且之前用原生C ++構建了一個,但現在我沒有時間,如果我自己做的話,我害怕性能不好。

您可以使用System.Collections.Generic.SortedSet<T> 我認為它是使用 AVL樹非常相似的紅黑樹實現的。

快速搜索在這里找到了一個實現。 代碼看起來很干凈,但我還沒試過。

如果沒有別的,你可以對SortedSet<T>進行快速性能測試(如@Josef所建議),看看你的用例是否有任何不同。

可以在http://code.google.com/p/self-balancing-avl-tree/找到C#實現。 concat和split操作也已實現。

暫無
暫無

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

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