Redian新闻
>
捡到一张iTunes的$15 giftcard 怎么办?
avatar
捡到一张iTunes的$15 giftcard 怎么办?# Apple - 家有苹果
r*o
1
感觉应该有类似binary search的方法, 复杂度O(lgn),
但具体细节还是不清楚。
有谁知道怎么作吗?
avatar
i*g
3
昨天清理屋子里的垃圾信件,有一封几个月前的信,是一个叫redeem.me的公司寄给别
人的,但地址写成我家,拆开一看里边只有一张$15的iTune giftcard,没法找到失主
,但是扔掉又挺可惜的,自己用有点不厚道,也怕以后人家通过code查出来,难道应该
自己花邮费给寄回去。。?
avatar
m*9
4
这个可以log2k找到
你从array 1中取前k个数, 从array2中也取前k个数. 然后对取出来的这2个子数组, 找
median, 就是整个array1和array2的kth min了
avatar
B*s
6
I take it shamelessly

【在 i****g 的大作中提到】
: 昨天清理屋子里的垃圾信件,有一封几个月前的信,是一个叫redeem.me的公司寄给别
: 人的,但地址写成我家,拆开一看里边只有一张$15的iTune giftcard,没法找到失主
: ,但是扔掉又挺可惜的,自己用有点不厚道,也怕以后人家通过code查出来,难道应该
: 自己花邮费给寄回去。。?

avatar
r*o
7
多谢。如果某个array长度不到k怎么办呢?

【在 m******9 的大作中提到】
: 这个可以log2k找到
: 你从array 1中取前k个数, 从array2中也取前k个数. 然后对取出来的这2个子数组, 找
: median, 就是整个array1和array2的kth min了

avatar
n*e
8
怪不得我那张没寄到呢,initial 是啥?
avatar
g*n
9
Then go to the second array to find k+r elements (in which r = k - length_
1st_array).

【在 r****o 的大作中提到】
: 多谢。如果某个array长度不到k怎么办呢?
avatar
i*g
10
现在忘了 看着像女生的名字 肯定不是你

【在 n*******e 的大作中提到】
: 怪不得我那张没寄到呢,initial 是啥?
avatar
r*o
11
没看明白,能解释一下吗?

【在 g********n 的大作中提到】
: Then go to the second array to find k+r elements (in which r = k - length_
: 1st_array).

avatar
m*i
12
交给警察叔叔,或者交给我
avatar
y*i
13
不能merge同时计数么,到第k个的时候停止,就是要找的数了

【在 m******9 的大作中提到】
: 这个可以log2k找到
: 你从array 1中取前k个数, 从array2中也取前k个数. 然后对取出来的这2个子数组, 找
: median, 就是整个array1和array2的kth min了

avatar
r*o
14
这个是O(k)啊,应该有O(lgK)的方法。

【在 y**i 的大作中提到】
: 不能merge同时计数么,到第k个的时候停止,就是要找的数了
avatar
m*9
15
他说的是对的.
用log(m+n)找median可以看看这个帖子:
http://geeksforgeeks.org/?p=2105
意思就是, 你要取2组sub array, 使得它们的元素总个数是2k, 此时当你找到median时
,自然就是
kth min了. 对2个sorted array找median in log(m+n), 可以参考一下上面那个连接

【在 r****o 的大作中提到】
: 这个是O(k)啊,应该有O(lgK)的方法。
avatar
r*o
16
明白了,多谢。
不过,如果第2个数组不够长(也就是说,第2个数组长度>k,第一个数组长度两个数组总长度还是<2k)的话,这个方法还是不行把。

【在 m******9 的大作中提到】
: 他说的是对的.
: 用log(m+n)找median可以看看这个帖子:
: http://geeksforgeeks.org/?p=2105
: 意思就是, 你要取2组sub array, 使得它们的元素总个数是2k, 此时当你找到median时
: ,自然就是
: kth min了. 对2个sorted array找median in log(m+n), 可以参考一下上面那个连接

avatar
h*6
17
碰上两个数组总长度不够2k的情况,那么就找第m大的,这时必然有m
avatar
m*n
18
能再解释一下吗?
我没懂
找第m大,然后呢?

【在 h**6 的大作中提到】
: 碰上两个数组总长度不够2k的情况,那么就找第m大的,这时必然有m
avatar
r*9
19
这个是2klogn+log2k吧?

【在 m******9 的大作中提到】
: 这个可以log2k找到
: 你从array 1中取前k个数, 从array2中也取前k个数. 然后对取出来的这2个子数组, 找
: median, 就是整个array1和array2的kth min了

avatar
b*n
20
http://www.mitbbs.com/article/JobHunting/31548441_0.html
每个array取第k/2个元素比较,假设array1较小,那么array1的前k/2个元素必然在2个
array的前k小中,干掉这k/2个元素,找2个array剩下的第k/2小元素,recursion。
log k
相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。