由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
JobHunting版 - LC: 两个排序数组找中数
相关主题
电面面经找第K个最小的元素
问一个关于找中数得问题T电面,肯定完了!
有A[i]G家onsite面经,求bless,顺便问问这情况能有戏吗
P家面经考古到一道题
海量数据找中数似乎没啥好办法。Google Phone Interview
这个怎么解:找到N^2个数的中数问一道google面试题(from careercup)
find median for k sorted arrays问一个面试题
M大小的数组中选出前N个元素 (如果M和N都很大)贡献两个Amazon的电话面试题
相关话题的讨论汇总
话题: return话题: r1话题: median话题: 数组话题: elif
进入JobHunting版参与讨论
1 (共1页)
A*******e
发帖数: 2419
1
思路不难,但写起来怎么还有点麻烦?比如如何简洁地处理某个数组只有一个元素?
LC上贴出的答案可读性都不太好啊。
l******s
发帖数: 3045
2
Leetcode number?
w**z
发帖数: 8232
3
leetcode 出的书上有些答案确实很难读懂。过于追求编程技巧,以至于程序难读。

【在 A*******e 的大作中提到】
: 思路不难,但写起来怎么还有点麻烦?比如如何简洁地处理某个数组只有一个元素?
: LC上贴出的答案可读性都不太好啊。

s**x
发帖数: 7506
4
我一直认为这是最难的一道。
A*******e
发帖数: 2419
5
第四题。

【在 l******s 的大作中提到】
: Leetcode number?
A*******e
发帖数: 2419
6
好像是算法导论的习题。不知标准答案是啥。

【在 s**x 的大作中提到】
: 我一直认为这是最难的一道。
d****n
发帖数: 397
7
贴一个python 代码。 这个有点像quick sort里面的deterministic nlgn 算法。重点
是将rank r按两个数组长度分配。
然后在舍弃两个数组其中一个的左边一段。
class Solution:
# @return a float
def findMedianSortedArrays(self, A, B):
m = len(A)
n = len(B)
i = 0
j = m - 1
s = 0
t = n - 1
if (m + n) % 2 == 0:
r1 = (m + n) / 2
r2 = r1 + 1
median = (self.findRankr(A, B, i, j, s, t, r1) + self.findRankr(
A, B, i, j, s, t, r2)) / 2.0
else:
r1 = (m + n) / 2 + 1
median = self.findRankr(A, B, i, j, s, t, r1) / 1.0
return median

def findRankr(self, A, B, i, j, s, t, r):
if i == j + 1:
return B[s + r - 1]
elif s == t + 1:
return A[i + r - 1]
else:
if r == 1:
return min(A[i], B[s])
m = j - i + 1
n = t - s + 1
k = r * m / (m + n)
if k == 0:
k += 1
l = r - k
if A[i + k - 1] == B[s + l - 1]:
return A[i + k - 1]
elif A[i + k - 1] < B[s + l - 1]:
return self.findRankr(A, B, i + k, j, s, t, r - k)
else:
return self.findRankr(A, B, i, j, s + l, t, r - l)


【在 A*******e 的大作中提到】
: 好像是算法导论的习题。不知标准答案是啥。
1 (共1页)
进入JobHunting版参与讨论
相关主题
贡献两个Amazon的电话面试题海量数据找中数似乎没啥好办法。
继续研究数组分段题这个怎么解:找到N^2个数的中数
问一道题(2)find median for k sorted arrays
问道排序题M大小的数组中选出前N个元素 (如果M和N都很大)
电面面经找第K个最小的元素
问一个关于找中数得问题T电面,肯定完了!
有A[i]G家onsite面经,求bless,顺便问问这情况能有戏吗
P家面经考古到一道题
相关话题的讨论汇总
话题: return话题: r1话题: median话题: 数组话题: elif