C# LINQ 获取 Top N 元素:不使用 Take 方法
可以使用 OrderByDescending 和 FirstOrDefault 方法来实现获取 top n 的功能,无需使用 Take 方法。
示例代码:
var topN = list.OrderByDescending(x => x.Value).FirstOrDefault(n => true);
其中,list 是需要获取 top n 的集合,x.Value 是需要按照哪个属性进行排序,n 是需要获取的前 n 个元素的数量。
这段代码会按照值从大到小的顺序进行排序,然后返回前 n 个元素中的第一个元素,即为 top n 中的最大值。如果集合中不足 n 个元素,则返回集合中的所有元素。
原文地址: https://www.cveoy.top/t/topic/oq02 著作权归作者所有。请勿转载和采集!