Javascript 是否在不使用排序的情况下查找数组中第n个最大的数字?

Javascript 是否在不使用排序的情况下查找数组中第n个最大的数字?,javascript,arrays,sorting,Javascript,Arrays,Sorting,在Javascript中,在未排序的数组中查找第n个最大的数字,而不对数组进行排序。假设数组的大小为k 保持其最大堆 然后开始删除堆的元素,同时保持其最大堆属性n次。第n个元素将是第n个最大元素。需要至少对数组的一个副本进行排序,而不更改未排序的数组。您可以这样做,但复杂性将为n^2。。。我不建议你需要一定的时间复杂度吗?因为你可以为O(n)@juvian使用暴力-没错,有什么用algorothm@NickCatib-哦,怎么做?不使用任何分类技术,先生!现在我改变了我的答案。

在Javascript中,在未排序的数组中查找第n个最大的数字,而不对数组进行排序。

假设数组的大小为k

保持其最大堆


然后开始删除堆的元素,同时保持其最大堆属性n次。第n个元素将是第n个最大元素。

需要至少对数组的一个副本进行排序,而不更改未排序的数组。您可以这样做,但复杂性将为n^2。。。我不建议你需要一定的时间复杂度吗?因为你可以为O(n)@juvian使用暴力-没错,有什么用algorothm@NickCatib-哦,怎么做?不使用任何分类技术,先生!现在我改变了我的答案。