我想将一组两个整数值添加到列表/数组中,并将它们排序为不同的组。
例如:- { {2,3},{2,3},{5,10},{5,2} }
应变为 { {2,3}, {5,10},{5,2} }
使用数组或列表的最佳方法是什么?
最佳答案
假设您确实只想获取所有不同的项目,最简单的方法是使用 Tuple<int,int>
列表然后使用 IEnumerable.Distinct()
删除重复项。
例如:
var data = new List<Tuple<int, int>>
{
Tuple.Create(2, 3),
Tuple.Create(2, 3),
Tuple.Create(5, 10),
Tuple.Create(5, 2)
};
var distinct = data.Distinct().ToList();
foreach (var tuple in distinct)
Console.WriteLine(tuple);
这不会执行任何排序,但如果您想对结果进行排序,可以使用 OrderBy()
选择要订购的元素:
var distinct = data.Distinct().OrderBy(item => item.Item1).ToList();
这将按每对的第一个元素排序(因为指定了 Item1
)。
关于c# - 在 C# 中获取不同整数集的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41595576/