gpt4 book ai didi

c# - 按列表中的计数区分列表项

转载 作者:太空宇宙 更新时间:2023-11-03 21:08:54 24 4
gpt4 key购买 nike

我有一个树的列表

   List<Tree> trees;
...
filter_trees = trees.Distinct().ToList();

我想选择不同的树,它基于 Tree 类的相等函数来区分不同的树。现在我需要根据它们在 trees 中的频率(计数)对这些不同的树进行排序。

它可能需要一个 group by 语句,但我更喜欢 Distinct 因为它没有参数并且基于特定的 Equals 函数工作写了。

最佳答案

您仍然可以在一个 LINQ 链中完成所有操作。 GroupBy 会尊重你的平等比较,然后你可以选择一个包含树和计数的复杂项目,然后按计数排序,然后拉出树。

var orderedTrees = trees
.GroupBy(t => t)
.Select(g => new
{
Tree = g.Key,
Count = g.Count()
})
.OrderBy(x => x.Count)
.Select(x => x.Tree)
.ToList();

关于c# - 按列表中的计数区分列表项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39128442/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com