c# – 频繁插入已排序的集合
我已经对集合(List)进行了排序,我需要始终对其进行排序.
我目前正在我的集合上使用List.BinarySearch,然后在正确的位置插入元素.我也尝试过每次插入后的排序列表,但性能不可接受. 有没有可以提供更好性能的解决方案?也许我应该使用其他收藏品. (我知道SortedList但它仅限于唯一键) 解决方法
PowerCollections有一个OrderedBag类型,可能对你需要的东西有好处.来自文档
但是,对于.NET 3.5内置类型,使用List.BinarySearch并将每个项目插入正确的位置是一个良好的开端 – 但是在内部使用数组,因此当您执行所有复制时,性能将下降插入. 如果你可以将插件分组到可以改进的东西,但除非你在所有插入后只能进行一次排序操作,否则如果可以的话,最好使用PowerCollections中的OrderedBag. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |