我怎样才能在一个数组中找到 n 个最大的整数并 returns 它们在一个新数组中
How can i find the n largest integers in an array and returns them in a new array
如何在一个数组中找到 n 个最大的整数并returns它们在一个新数组中。
使用Linq非常简单:
var newArray = array.OrderByDescending(x => x).Take(n).ToArray();
您可以使用堆排序在 nlogn 时间内完成此操作。
- 创建最大堆
- 从中拉取n个元素
如何在一个数组中找到 n 个最大的整数并returns它们在一个新数组中。
使用Linq非常简单:
var newArray = array.OrderByDescending(x => x).Take(n).ToArray();
您可以使用堆排序在 nlogn 时间内完成此操作。
- 创建最大堆
- 从中拉取n个元素