由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
JobHunting版 - 关于K个sorted数组中第n大数的问题
相关主题
求一下这题解法。写个面经 分享一些题目
找第K个最小的元素求问一题,in-place排序一个字符数组里的词
问个经典问题的improvement问一道题(5)
G面试题求解g家电面,被拒了
请教一道题目LinkedIn家电面面经
请教一道题G家电面题目
T家一面关于那个随机数的
Median of Two Sorted Arraysgoogle youtube interview, 莫名被拒。。。。。。
相关话题的讨论汇总
话题: 数组话题: heap话题: 解法话题: number话题: sorted
进入JobHunting版参与讨论
1 (共1页)
f*********i
发帖数: 197
1
解法应该是构造一个size 为 k的heap,时间复杂度是O(nlgk)但是有一点我想问大家,
你们是如何判断当前heap最顶端的数是属于哪个数组的呢。用hash的话会有两个key相
同的问题,一个个和数组的数比较的话那就太花时间了。
请问有没有比较好的方法判断。
w***y
发帖数: 6251
2
我当时想的是, 在heap里面放的node,除了排序用的key, 还存放数组指针
a****o
发帖数: 45
3
楼主能简要说下怎么实现o(nlg k)吗
c*******a
发帖数: 35
4
呵呵,那就建一个和那个heap 一摸一样的另一个堆记住每个node是来自第几个array不
就得了。
O是不变的
z****h
发帖数: 164
5
真的吗?
第一个堆存的是value,按照value大小排序。
第二个堆存的是array index,请问按照什么排序能跟第一个堆对应?

【在 c*******a 的大作中提到】
: 呵呵,那就建一个和那个heap 一摸一样的另一个堆记住每个node是来自第几个array不
: 就得了。
: O是不变的

f*******n
发帖数: 12623
6
Instead of using the number as the heap element, use a pair (number, array
number) as the element. When you compare, compare the number only (use a
custom comparator that only compares the first part of the pair).
s*****n
发帖数: 162
7
n个sorted arrays,每个有n元素,求第k大的数,江湖传闻有paper给出了O(n)的解,
不过解法应该很复杂,因为这题反复讨论过,至今也没有见到O(n)的详解。退求其次,
有O(n log n)的解法,用到median of medians和weighted median。这个解法比用堆的
O(k log n)算法,有更好的时间复杂度,因为in the worst case, k是O(n^2)。但这个
解法在面试中,要写出code来,估计也不太可能。
c*******a
发帖数: 35
8
其实第二个不是一个堆,不需要根据index排序,只是一个和第一个树一样的二叉树,
只不过顺序是一样的,当你traverse第一个树的时候,同样调整第二个树即可。

【在 z****h 的大作中提到】
: 真的吗?
: 第一个堆存的是value,按照value大小排序。
: 第二个堆存的是array index,请问按照什么排序能跟第一个堆对应?

1 (共1页)
进入JobHunting版参与讨论
相关主题
google youtube interview, 莫名被拒。。。。。。请教一道题目
亚麻onsite面经请教一道题
给后人贡献一下 pg那个游戏公司的面试题目T家一面
问个题目,找不在区间内的所有数Median of Two Sorted Arrays
求一下这题解法。写个面经 分享一些题目
找第K个最小的元素求问一题,in-place排序一个字符数组里的词
问个经典问题的improvement问一道题(5)
G面试题求解g家电面,被拒了
相关话题的讨论汇总
话题: 数组话题: heap话题: 解法话题: number话题: sorted