MrD*_*ase 4 c# data-structures
我想使用C#在平衡二叉搜索树中存储一些值.我查看了泛型命名空间中的集合,但我没有找到stl集的等价物.
我可以使用哪些通用集合?(我不想存储键/值对......只是值.)
如果您需要排序集,请使用SortedDictionary<T,U>.这是使用二叉搜索树实现的.不可否认,每个条目将使用64位,因为您在下面存储了一个键值对.你可以像这样写一个包装器:
class Set<T> : SortedDictionary<T, bool>
{
public void Add(T item)
{
this.Add(item, true);
}
}
Run Code Online (Sandbox Code Playgroud)如果您不需要排序集,请使用HashSet<T>.
否则,请查看C5 Generic Collection Library.特别是TreeSet<T>.它是一棵红黑树,只存储值.