gpt4 book ai didi

c# - 返回唯一值而不删除重复项 - C#

转载 作者:行者123 更新时间:2023-11-30 13:26:21 24 4
gpt4 key购买 nike

我知道有很多关于在删除重复项后返回数组中的唯一值的答案,但是在删除重复项后数组中的每个元素不都是唯一的吗?我只想返回在删除任何重复项之前唯一的值。如果元素在原始数组中重复,我不希望它出现在我的最终数组中。

所以这个数组...

[0, 1, 1, 2, 3, 3, 3, 4]

应该只返回:

[0, 2, 4]

另一种表达方式是删除所有重复项以及曾经重复的所有唯一值。

我有 JavaScript 背景,但对 C# 语法仍然有些不适应。 :)

最佳答案

最简单的方法是使用 LINQ,按值分组,计算每组中元素的数量,然后返回具有单个值的组的键:

var singleOccurrences = array.GroupBy(x => x)
.Where(g => g.Count() == 1)
.Select(g => g.Key)
.ToArray();

如果您真的需要它对大量输入有效,您可以编写自己的方法来跟踪“具有单个值的元素”和“具有多个值的元素”作为集合。不过我会从这个开始:)

关于c# - 返回唯一值而不删除重复项 - C#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26287686/

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