[问题] 给定n个排好序的整数阵列 找中位数

楼主: FRAXIS (喔喔)   2014-10-14 06:47:02
问题:给定 n 个已排序整数阵列,每个阵列长度为 n
找出 n^2 个元素中的中位数。
在网络上有找到几个讨论
http://ppt.cc/PMvU
http://ppt.cc/JE1s
(这是变形,给定一个n by n矩阵,每行每列都排序,找中位数)
但是我觉得他们的解法到最后都变成O(n^2 lg n)。
而如果忽略掉每个阵列都已经排序的性质,直接在 n^2 个元素中找中位数,
因为找中位数可以在线性时间内完成,
所以在 n^2 个元素内找中位数只需要O(n^2)的时间,也比网页上的解答好。
有没有比O(n^2)快的方法来解决这问题呢?
对于变形题,理论上是有O(n)的方法,但是比较复杂。
我也想知道有没有比O(n^2)快,但是容易实作的方法?
作者: springman (司布林)   2014-10-14 08:54:00
感觉上有机会比 O(n^2) 小,只是还蛮复杂的。有空来想想程式要怎么写好了。

Links booklink

Contact Us: admin [ a t ] ucptt.com