Csharp/C#教程:.NET SortedDictionary但按值排序分享


.NET SortedDictionary但按值排序

我需要一个像SortedDictionary一样的数据结构,但是它是根据值而不是键来排序的。 当我们在字典中有大约3000个项目时,我需要大约1-2微秒来添加和删除项目。

我的第一个想法是简单地在我的代码中切换键和值。 这几乎是有效的。 通过这样做,我可以在测试中添加和删除大约1.2微秒的元素。

但是密钥必须在SortedDictionary中是唯一的,这意味着我的逆字典中的值必须是唯一的。 在某些情况下,他们可能不会。

.NET库中的某些想法已经对我有用吗?

PowerCollections库有一个名为OrderedMultiDictionary ,它基本上类似于SortedDictionary但允许重复。 查找键时,您将获得可枚举而不是单个值。

该库是免费的,你应该能够完成你想要的那个类 – 将值存储为键。

您可以按如下方式对SortedDictionary进行排序:

上述就是C#学习教程:.NET SortedDictionary但按值排序分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!

 yourList.Sort( delegate(KeyValuePair val1, KeyValuePair val2) { return val1.Value.CompareTo(val2.Value); } ); 

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/cdevelopment/949582.html

(0)
上一篇 2021年11月17日
下一篇 2021年11月17日

精彩推荐