【发布时间】:2021-07-07 11:44:30
【问题描述】:
我想根据它们的顺序(按它们的值排序)评估在我的 List 中保存数字值的元素并将它们放入 List,其中 Key 是原始元素,Value 是评估顺序。我的问题是我不知道如何处理元素中的无关值 - 它们应该是平均顺序。
例如:
double[]{2,4,4,4,7,8,40} 我想要double[]{1,3,3,3,5,6,7}
我已经对该列表进行了排序:
for (int i = 0; i < CriterionsNumber; i++)
{
variants[i].Criterions.OrderByDescending(value => value.Value).ToList();
}
Thank you.
【问题讨论】:
-
真的不清楚您要做什么,或者您在此处发布的代码有什么问题。不过有一点很突出,
OrderByDescending返回一个排序列表,它根本不会影响源数据。 -
如果只有2个值为4的元素怎么办?那么平均订单将是 2.5。
-
@HansKilian 是的,如果有 2 个元素的值为 4,它看起来像:int[]{1,2.5,2.5,4,5,6}。我已经有一个带顺序的有序列表(作为索引),但我必须按照它们的顺序评估这些元素,因为可以有两个相同的值。
-
将 2.5 放入整数数组中有点困难
-
@HansKilian 哦,是的,我的错。这只是一个简单的例子来展示我想要的东西。在我的 Variant-Criteiron 结构中,当然有 double 值。