我咨询过的大多数地方都说要使用 SortedList,但问题是我正在移植的程序实际上使用了重复的键(按顺序区分),这是 TreeMap 允许的,但 SortedList 不允许。
有什么建议吗?
我咨询过的大多数地方都说要使用 SortedList,但问题是我正在移植的程序实际上使用了重复的键(按顺序区分),这是 TreeMap 允许的,但 SortedList 不允许。
有什么建议吗?
SortedDictionary类有帮助吗?
.NET 中红黑树的另一个很好的实现可以在这里找到: http ://www.itu.dk/research/c5/
我不认为 C# 本身就有一个。然而,那里有很多红黑实现的例子。这是一个:-
一般使用排序集
public class ItemComparer : IComparer<int[]>
{
public int Compare(int[] item1, int[] item2)
{
if (item1[0] != item2[0]) return item1[0].CompareTo(item2[0]);
return item1[1].CompareTo(item2[1]);
}
}
var s = new SortedSet<int[]>(new ItemComparer());