1
55
|
2
6
标准库中执行此操作的函数是
|
3
3
从L的前10开始,称之为X。注意X的最小值。 把我的身体绕过去。 如果L[i]大于min(X),则从X中删除min(X)并插入L[i]。您可能需要将X保留为已排序的链接列表并进行插入。更新min(X)。 最后,在X中有10个最大的值。 我猜想这是O(kN)(这里k是10),因为插入排序是线性的。可能是gsl使用的,所以如果您可以阅读一些C代码: http://www.gnu.org/software/gsl/manual/html_node/Selecting-the-k-smallest-or-largest-elements.html 可能是纽比的某个地方做的。 |
4
1
一个相当有效的解决方案是快速排序的变体,其中递归仅限于轴的右侧部分,直到轴点位置高于所需的元素数(当然还有一些处理边界情况的额外条件)。
标准库有
|
July · 如何定义数字间隔,然后四舍五入 1 年前 |
user026 · 如何根据特定窗口的平均值(行数)创建新列? 1 年前 |
Ashok Shrestha · 需要追踪特定的颜色线并获取坐标 1 年前 |
Nicote Ool · 在FastApi和Vue3中获得422 1 年前 |
Abdulaziz · 如何对集合内的列表进行排序[重复] 1 年前 |
asmgx · 为什么合并数据帧不能按照python中的预期方式工作 1 年前 |