支持排序的最佳数据结构

本文关键字:数据结构 最佳 排序 支持 | 更新日期: 2023-09-27 18:16:06

我目前正在尝试找出哪种数据结构可能是最好的。下面是我要做的:

我有一个对象和一个与这个对象相关联的值。我想知道结构中哪一项的值最小

例如,如果我有以下对象:

 ZebraObject, 10
 CowObject, 1
 DogObject, 2

我想知道哪个对象的值最小(在本例中是CowObject)。我还必须访问CowObject内部的数据(调用一些函数,做一些计算等),并在最后,我将做一些像"值+=值"。所以在我访问了CowObject之后,数据看起来像

 ZebraObject, 10
 CowObject, 2 // (1 + 1)
 DogObject, 2
谁能帮我弄清楚这种情况下最好的数据结构是什么?

编辑:我假设每个元素(至少对于对象)都是唯一的。与对象关联的float值可以是重复的

支持排序的最佳数据结构

排序集有助于满足您的需求。但是排序集不允许重复。根据对象的特定字段进行排序实现IComparer.

你可以得到更多的帮助SortedSet和等式

ObservableCollection是绑定到列表的最好方法。它已经实现了INotifyPropertyChanged接口。也许让你的视图模型继承自observablecollection