是否有任何其他最佳方法可以从 3 个排序数组中获取 5 个最大数字,如下面的代码所示:
更新:
下面的代码给了我结果,但我不确定这是否是唯一的方法
输入数组可能包含重复项,但结果不能
高效意味着我们在获得结果时需要更少的迭代。
我正在寻找 linq 特定的答案。
private void Take5MaxNumbers()
{
var a1 = new[] { 10, 25, 45, 65, 76 };
var a2 = new[] { 32, 43, 54, 62, 78, 85, 93, 102 };
var a3 = new[] { 54, 74, 98, 105 };
var finalArray = a1.Union(a2).Union(a3).OrderByDescending(x => x).Take(5);
foreach (var item in finalArray)
{
Console.Write(item + " ");
}
}
// Output:
105 102 98 93 85