【发布时间】:2021-09-21 13:43:35
【问题描述】:
我想先按 Key 再按 Value 对 myDictionary 进行排序。
Dictionary<int, double> myDictionary = new Dictionary<int, double>()
{
{1,514},
{2,509},
{3,510},
{4,509},
{5,517},
{6,512},
{7,514},
{8,511}
}
我需要找到最小值和最大值Value,然后按Key 对其进行排序。
var orderedDict = myObjectDictionary
.OrderByDescending(a => a.Value)
.ThenBy(b => b.Key);
但我需要从最大Value 的对象中找到最小Value 最远的对象(使用Key)。如果有两个最小/最大Value 的对象(使用Key)距离对面对象(最小/最大)最远。
之后我需要寻找接近最小值/最大值的对象,以及它们的值是否接近最小值/最大值并且它们离它们最远。
在这种情况下: 最大值 = 5, 517 最小值 = 3, 510
【问题讨论】:
-
你有什么问题?
-
其他获取最大值的方法stackoverflow.com/questions/10290838/…
-
@PeterCsala 我的问题是我怎样才能获得这个结果(在这种情况下:Max= 5, 517 Min= 3, 510)?有人可以提供代码示例或其他内容吗?
-
我可以看到517是最大值,这就是为什么5,517是最大值。但是键 2 和键 4 有两个 509 值。那么为什么是 3,510 是你的最小值?
-
因为如果它们相邻,我无法获得最小值和最大值。
标签: c# linq dictionary