由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
JobHunting版 - Google电面题
相关主题
问个电面题Amazon 面经
binary search什么时候用l分享最近被拒的面试题
Facebook 第一轮电面求函数的极值那题的解法?
问个电面题问一个问题: binary search Tree的删除用java实现。
贡献几道CS电面题onsite面试题一道
A Simple Question on Binary Search给定一个值和sorted队列,找到所有pair(其和等于给定值)
一道FB电面题问个题
这个题目能否半小时完成coding?一道 Amazon DP题
相关话题的讨论汇总
话题: binary话题: search话题: google话题: double话题: index
进入JobHunting版参与讨论
1 (共1页)
r***u
发帖数: 241
1
有一个排好序的词典,大小未知,唯一的接口就是查询某个index对应的单词,如果该
index超出词典大小则返回null
如何最快的判断一个给定的单词是否在词典中。
l*****a
发帖数: 14598
2
可以对这个字典进行重新处理吗?
可以的话就弄个trie...
不可以的话就按照index 2,4,8,16,32 去search,
比较target与index那个词的大小,然后再binary search

【在 r***u 的大作中提到】
: 有一个排好序的词典,大小未知,唯一的接口就是查询某个index对应的单词,如果该
: index超出词典大小则返回null
: 如何最快的判断一个给定的单词是否在词典中。

A*********r
发帖数: 564
3
呵呵,貌似是一个以前的on-site题。。
大小未知,估计要doubling+binary search。
不过不知道这道题要考察什么?是否知道doubling?

【在 r***u 的大作中提到】
: 有一个排好序的词典,大小未知,唯一的接口就是查询某个index对应的单词,如果该
: index超出词典大小则返回null
: 如何最快的判断一个给定的单词是否在词典中。

r***u
发帖数: 241
4
什么是doubling?我说了binary search,但不够perfect。
他希望既能快速找到index小的,又能找到大的

【在 A*********r 的大作中提到】
: 呵呵,貌似是一个以前的on-site题。。
: 大小未知,估计要doubling+binary search。
: 不过不知道这道题要考察什么?是否知道doubling?

c**********e
发帖数: 2007
5
Step 1. Double/half bah. Start with a guess, say n=10000. If the w[n] is "less" than the given word, double it, check w[2n]. If w[n] is "greater" than, check w[n/2].
Step 2. Binary search. Eventually, you will find a range m...n, the word is between w[m] and w[n]. Then perform binary search to figure it out.

【在 r***u 的大作中提到】
: 有一个排好序的词典,大小未知,唯一的接口就是查询某个index对应的单词,如果该
: index超出词典大小则返回null
: 如何最快的判断一个给定的单词是否在词典中。

r***u
发帖数: 241
6
I said something like this. He then asked why start with such a guess?
It's inefficient for small dictionaries.

less" than the given word, double it, check w[2n]. If w[n] is "greater" than
, check w[n/2].
is between w[m] and w[n]. Then perform binary search to figure it out.

【在 c**********e 的大作中提到】
: Step 1. Double/half bah. Start with a guess, say n=10000. If the w[n] is "less" than the given word, double it, check w[2n]. If w[n] is "greater" than, check w[n/2].
: Step 2. Binary search. Eventually, you will find a range m...n, the word is between w[m] and w[n]. Then perform binary search to figure it out.

s*****n
发帖数: 5488
7
因为大小不知道。不能直接上binary search。所有回帖的算法是正确的。

【在 r***u 的大作中提到】
: 什么是doubling?我说了binary search,但不够perfect。
: 他希望既能快速找到index小的,又能找到大的

r***u
发帖数: 241
8
可是面试官貌似还是不满意的样子。难道是交流出了问题?碰到了阿三哥哥

【在 s*****n 的大作中提到】
: 因为大小不知道。不能直接上binary search。所有回帖的算法是正确的。
A*********r
发帖数: 564
9
呵呵,如果你感觉他还是不满意,可以问一下hint..

【在 r***u 的大作中提到】
: 可是面试官貌似还是不满意的样子。难道是交流出了问题?碰到了阿三哥哥
s*****n
发帖数: 5488
10
看你回帖,他不是让你解释一下最初的n怎么选择吗?
我感觉是个open 问题。
这个算法有两个cases:
1.直接 2. result > n,那么需要doubling+ binary search:复杂度:lg r/lg n +lg r - 1
直观上,n足够大能够让result落入case 1.
那么给出一个middle size的n应该不错。
不知道还有什么更好的方法。

【在 r***u 的大作中提到】
: 可是面试官貌似还是不满意的样子。难道是交流出了问题?碰到了阿三哥哥
s*****n
发帖数: 5488
11

应该是lg r/n:然后是变成2 lg r - lg n - 1

【在 s*****n 的大作中提到】
: 看你回帖,他不是让你解释一下最初的n怎么选择吗?
: 我感觉是个open 问题。
: 这个算法有两个cases:
: 1.直接: 2. result > n,那么需要doubling+ binary search:复杂度:lg r/lg n +lg r - 1
: 直观上,n足够大能够让result落入case 1.
: 那么给出一个middle size的n应该不错。
: 不知道还有什么更好的方法。

h***o
发帖数: 1494
12
index是什么type? 知道了就知道最大的可能值。
r***u
发帖数: 241
13
开始给的unsigned int,我指出后改为BigInt

【在 h***o 的大作中提到】
: index是什么type? 知道了就知道最大的可能值。
1 (共1页)
进入JobHunting版参与讨论
相关主题
一道 Amazon DP题贡献几道CS电面题
关于trie和binary search tree的疑问。A Simple Question on Binary Search
请教一个常见的面试题的答案一道FB电面题
都来看看今年经济学诺贝尔奖的理论和找工作的关系这个题目能否半小时完成coding?
问个电面题Amazon 面经
binary search什么时候用l分享最近被拒的面试题
Facebook 第一轮电面求函数的极值那题的解法?
问个电面题问一个问题: binary search Tree的删除用java实现。
相关话题的讨论汇总
话题: binary话题: search话题: google话题: double话题: index