【问题标题】:finding the highest element from an integer array which doesn't have duplicate从没有重复的整数数组中找到最高元素
【发布时间】:2020-08-27 05:29:27
【问题描述】:

我有一个对象数组,其中包含等级、值等属性。我想使用 Linq c# 找到具有最高等级且没有重复的对象,我的意思是应该是唯一的。

【问题讨论】:

  • “排名最高且没有重复” 究竟是什么意思?你能发布一些小代码吗?这是否意味着该数组不包含相同实例的重复条目,或者 rank 属性在所有条目中都是唯一的,或者您想要具有最高唯一等级的那个或完全不同的东西?当我读到它时,您期望超出排名: [0, 1, 1, 2, 3, 4, 5, 5, 6, 6, 6] 会返回 4,因为它是没有重复的最高排名?
  • [0, 1, 1, 2, 3, 4, 5, 5, 6, 6, 6] 返回 4,因为它是没有重复的最高排名。是的,我也想要。

标签: c# linq


【解决方案1】:
int[] numbers = { 1, 2, 2, 3, 3, 4, 4, 5, 6, 6, 6 };
int maxUniqueNumber = numbers.GroupBy(n => n)
    .Where(g => g.Count() == 1)
    .Select(g => g.Key)
    .Max();

感谢:C# Get non duplicates in a list 此答案的唯一编号部分。

【讨论】:

  • 虽然这适用于整数,但 OP 有一个具有 int 属性的某个类的数组。他想要该属性中具有最高值的实例。
猜你喜欢
  • 1970-01-01
  • 2012-08-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-10-11
  • 1970-01-01
  • 2023-01-02
相关资源
最近更新 更多