线性时间选择
文章平均质量分 75
CPoniu
这个作者很懒,什么都没留下…
展开
-
计蒜客-求第K小
给定n(1≤n≤1000000)个元素,求第k小数(1≤k≤n)。 输入格式: 一组样例。第一行输入两个整数n和k。第二行输入n个不同的int范围内的数。 输出格式: 输出一行,输出第k小数。 样例输入 5 2 1 5 3 2 4 样例输出 2 #include using namespace std; int a[1000001]; vo转载 2017-10-07 20:26:58 · 1074 阅读 · 0 评论 -
BFPRT算法
BFPRT算法,又称为中位数的中位数算法,由5位大牛(Blum 、 Floyd 、 Pratt 、 Rivest 、 Tarjan)提出,并以他们的名字命名。参考维基上的介绍Median of medians。 算法的思想是修改快速选择算法的主元选取方法,提高算法在最坏情况下的时间复杂度。其主要步骤为: 首先把数组按5个数为一组进行分组,最后不足5个的忽略。对每组数进行排序(如插入转载 2017-10-07 20:31:23 · 515 阅读 · 0 评论