由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
JobHunting版 - onsite求bless 附g家面试题
相关主题
请教电面试题longestCommonPrefix 究竟怎样时间复杂度最低?
discuss an array rearrange questionG一道题
interview中被问到没有的做过的东西怎么回答?发个google的面试题
心情坏到极点面试题总结(5) - Binary search and divide and conquer
这个题怎么做啊?dynamic programming 和divide and conquer区别
facebook intern 面经做了一道挺有意思的题
关于2D, 3D平面上点的问题?一个面试题
求 Maximum Subarray divide and conquer 解法请教一下各位大牛,开放性问题的事情。
相关话题的讨论汇总
话题: mid话题: local话题: minima话题: host话题: bless
进入JobHunting版参与讨论
1 (共1页)
b*******h
发帖数: 53
1
g面了两轮:1. 给一个bst,给一个值,找到这个bst中与这个值最接近的数; 在月球
上放了一排host,怎么构架这些host,让他们不用人为操作。
2. 经典题:给一个数组,找出一个local minima的值。(local minima 即这个数比左
右两边的数小,假设没有重复。)
明天面试另一家公司的onsite,求bless啊!!
B*******1
发帖数: 2454
2
onsite就2轮?

【在 b*******h 的大作中提到】
: g面了两轮:1. 给一个bst,给一个值,找到这个bst中与这个值最接近的数; 在月球
: 上放了一排host,怎么构架这些host,让他们不用人为操作。
: 2. 经典题:给一个数组,找出一个local minima的值。(local minima 即这个数比左
: 右两边的数小,假设没有重复。)
: 明天面试另一家公司的onsite,求bless啊!!

j*****y
发帖数: 1071
3
bless.
月球上 host这个题目啥意思阿?
local minima用 线性时间 吧?

【在 b*******h 的大作中提到】
: g面了两轮:1. 给一个bst,给一个值,找到这个bst中与这个值最接近的数; 在月球
: 上放了一排host,怎么构架这些host,让他们不用人为操作。
: 2. 经典题:给一个数组,找出一个local minima的值。(local minima 即这个数比左
: 右两边的数小,假设没有重复。)
: 明天面试另一家公司的onsite,求bless啊!!

l****i
发帖数: 396
4
bless bless~~~
b*******h
发帖数: 53
5
相当于电面,因为我在的地方有google office,他们让我过去面试。

【在 B*******1 的大作中提到】
: onsite就2轮?
b*******h
发帖数: 53
6
local minima 是logn的时间
月球上的host我的理解是考怎么架构,设计。我说了这些点:用一个master host管理
所有的hosts,master host 也是普通的host,如果它down了,其它host 通过ping,
ping不到这个service时,可以选择另一个host做master host。 如何选择另一个host
,就用token, 谁拿到了token谁是host。 还有就是数据重复,防止一个host down了
数据的丢失。

【在 j*****y 的大作中提到】
: bless.
: 月球上 host这个题目啥意思阿?
: local minima用 线性时间 吧?

b*******h
发帖数: 53
7
我是平时看到了这道题,就扫了一眼,没理解逻辑就放过了,教训啊。 硬生生的在面
试的时候被面试官教会的。是个数学题,画图会比较好理解。明天面试回来我来update
我的理解,或者坐等高人。
先求bless~
a***o
发帖数: 1182
8
bless~

update

【在 b*******h 的大作中提到】
: 我是平时看到了这道题,就扫了一眼,没理解逻辑就放过了,教训啊。 硬生生的在面
: 试的时候被面试官教会的。是个数学题,画图会比较好理解。明天面试回来我来update
: 我的理解,或者坐等高人。
: 先求bless~

B********t
发帖数: 147
9
local min那题好像对原数组有要求吧?a[0] >= a[1] && a[n-2] <= a[n-1]. 然后二
分就行了
没这限制 logn做不到。。
s********l
发帖数: 998
10
只有数组 2个end有限制
怎么就可以log(n)了?

【在 B********t 的大作中提到】
: local min那题好像对原数组有要求吧?a[0] >= a[1] && a[n-2] <= a[n-1]. 然后二
: 分就行了
: 没这限制 logn做不到。。

相关主题
facebook intern 面经longestCommonPrefix 究竟怎样时间复杂度最低?
关于2D, 3D平面上点的问题?G一道题
求 Maximum Subarray divide and conquer 解法发个google的面试题
进入JobHunting版参与讨论
P******r
发帖数: 842
11
http://www.careercup.com/question?id=8223978
第一个答案好像不完整。还有一个情况没考虑,就是a[mid]比两边大。
思路是这样的吧
There are three kinds of arrays that have no local min: monotonically
increasing, monotonically decreasing, and monotonically increasing then
monotonically decreasing. Any array that satisfied the given condition (a[0]
>= a[1] && a[n-2] <= a[n-1]) must have at least one local min. We just need
to divide our problem into smaller ones that satisfy this condition. For
log(n) solution, it’s natural to look at the mid element and divide from
there.
1. suppose function signature is f(a, p, q)
2. let mid = (p+q)/2
3. if (a[mid-1] >= a[mid] && a[mid+1] >= a[mid]), return mid
4. otherwise if (a[mid-1] >= a[mid] && mid-1-p >= 2) return f(a,p,mid-1)
5. otherwise return f(a, mid+1, q)
6. need to consider when array has only two elements
大家帮我看看对不对?自己test了几个cases
int findLocalMin(int a[], int p, int q) {
if (q-p < 2) return -1;
int mid = (p+q)/2;
if (a[mid-1] >= a[mid] && a[mid+1] >= a[mid])
return mid;
if (a[mid-1] <= a[mid] && mid-p >= 2) // 9 9 8 10
return findLocalMin(a,p,mid);
return findLocalMin(a,mid,q);
}
l**b
发帖数: 457
12
斗胆问一下,local min这道题,如果平时没见过,面试给45分钟,有多少大牛能保证
一定想得出来?
l*******b
发帖数: 2586
13
端点可以是local min,然后写code 。 或者面试官想让你先问他端点可不可以是local
min.
前两天板上讨论过

【在 b*******h 的大作中提到】
: g面了两轮:1. 给一个bst,给一个值,找到这个bst中与这个值最接近的数; 在月球
: 上放了一排host,怎么构架这些host,让他们不用人为操作。
: 2. 经典题:给一个数组,找出一个local minima的值。(local minima 即这个数比左
: 右两边的数小,假设没有重复。)
: 明天面试另一家公司的onsite,求bless啊!!

l***i
发帖数: 1309
14
local min的题,如果告诉你是divide and conquer, O(log n) time可能还能想想,要不
然就是老师上课讲过了.比如我是听说过的,人说是MIT algorithm课上讲的.不太明白这
种题考什么,coding太容易,是不是说要不你就是MIT的,要不你就得想出一个MIT
professor交给他学生的一个algorithm
P******r
发帖数: 842
15
这个linear解法简单,所以下一步应该是log,除非像那个同时找min和max的能从2n个
比较降到1.5n comparison。如果这么分析下来,就是devide and conquer了。即使这
样,答案也不好想。

【在 l***i 的大作中提到】
: local min的题,如果告诉你是divide and conquer, O(log n) time可能还能想想,要不
: 然就是老师上课讲过了.比如我是听说过的,人说是MIT algorithm课上讲的.不太明白这
: 种题考什么,coding太容易,是不是说要不你就是MIT的,要不你就得想出一个MIT
: professor交给他学生的一个algorithm

c********t
发帖数: 5706
16
多谢讲解。基本思路应该就是这样。
但这道题我觉得本身限定很多。
第一,就是要given condition (a[0] >= a[1] && a[n-2] <= a[n-1]) 或者允许两头作
为local min
第二,就是不应该有duplicate (至少duplicate不相邻,否则遇到 a[mid-1] == a[mid
]==a[mid+1] 就不知道往哪里搜了。你的程序这种情况往前搜应该不对。
5,4,2,2,2,2,1,3
5,1,2,2,2,2,3,4

0]
need

【在 P******r 的大作中提到】
: http://www.careercup.com/question?id=8223978
: 第一个答案好像不完整。还有一个情况没考虑,就是a[mid]比两边大。
: 思路是这样的吧
: There are three kinds of arrays that have no local min: monotonically
: increasing, monotonically decreasing, and monotonically increasing then
: monotonically decreasing. Any array that satisfied the given condition (a[0]
: >= a[1] && a[n-2] <= a[n-1]) must have at least one local min. We just need
: to divide our problem into smaller ones that satisfy this condition. For
: log(n) solution, it’s natural to look at the mid element and divide from
: there.

B********t
发帖数: 147
17
如果有这个限制 你可以想像成从a[0]开始一直是单调递减的,如果发现a[mid-1] < a
[mid] 说明一定有一个凹点在0-mid之间。所以二分了。

【在 s********l 的大作中提到】
: 只有数组 2个end有限制
: 怎么就可以log(n)了?

B********t
发帖数: 147
18
这个只要允许凹点允许等于左右就行了

mid

【在 c********t 的大作中提到】
: 多谢讲解。基本思路应该就是这样。
: 但这道题我觉得本身限定很多。
: 第一,就是要given condition (a[0] >= a[1] && a[n-2] <= a[n-1]) 或者允许两头作
: 为local min
: 第二,就是不应该有duplicate (至少duplicate不相邻,否则遇到 a[mid-1] == a[mid
: ]==a[mid+1] 就不知道往哪里搜了。你的程序这种情况往前搜应该不对。
: 5,4,2,2,2,2,1,3
: 5,1,2,2,2,2,3,4
:
: 0]

B********t
发帖数: 147
19
比两边大没关系啊,因为比两边大可以往两边走

0]
need

【在 P******r 的大作中提到】
: http://www.careercup.com/question?id=8223978
: 第一个答案好像不完整。还有一个情况没考虑,就是a[mid]比两边大。
: 思路是这样的吧
: There are three kinds of arrays that have no local min: monotonically
: increasing, monotonically decreasing, and monotonically increasing then
: monotonically decreasing. Any array that satisfied the given condition (a[0]
: >= a[1] && a[n-2] <= a[n-1]) must have at least one local min. We just need
: to divide our problem into smaller ones that satisfy this condition. For
: log(n) solution, it’s natural to look at the mid element and divide from
: there.

P******r
发帖数: 842
20

mid
是的,条件限制比较多。careercup上是有duplicate的,我写程序时时把local min定
义为小于等于而不是小于的。不然程序要改成strictly less or greater than.

【在 c********t 的大作中提到】
: 多谢讲解。基本思路应该就是这样。
: 但这道题我觉得本身限定很多。
: 第一,就是要given condition (a[0] >= a[1] && a[n-2] <= a[n-1]) 或者允许两头作
: 为local min
: 第二,就是不应该有duplicate (至少duplicate不相邻,否则遇到 a[mid-1] == a[mid
: ]==a[mid+1] 就不知道往哪里搜了。你的程序这种情况往前搜应该不对。
: 5,4,2,2,2,2,1,3
: 5,1,2,2,2,2,3,4
:
: 0]

相关主题
面试题总结(5) - Binary search and divide and conquer一个面试题
dynamic programming 和divide and conquer区别请教一下各位大牛,开放性问题的事情。
做了一道挺有意思的题求Largest Rectangle in Histogram的DP解法
进入JobHunting版参与讨论
P******r
发帖数: 842
21
是的,是走那边都行。我说的是careercup link那的第一个答案没有包括这个case的处
理。

【在 B********t 的大作中提到】
: 比两边大没关系啊,因为比两边大可以往两边走
:
: 0]
: need

c********t
发帖数: 5706
22
明白了,多谢!

【在 P******r 的大作中提到】
: 是的,是走那边都行。我说的是careercup link那的第一个答案没有包括这个case的处
: 理。

l**b
发帖数: 457
23
那不就是明显意思让老中都去做民工?NND,题海战术,谁怕谁啊?
s********k
发帖数: 6180
24
这题我电面第二道题遇到过,当时想到了二分法做,不过时间不多有点紧张没搞定挂了
。我觉得这个given condition (a[0] >= a[1] && a[n-2] <= a[n-1])也不一定需要。
可以自己问这个local的定义

mid

【在 c********t 的大作中提到】
: 多谢讲解。基本思路应该就是这样。
: 但这道题我觉得本身限定很多。
: 第一,就是要given condition (a[0] >= a[1] && a[n-2] <= a[n-1]) 或者允许两头作
: 为local min
: 第二,就是不应该有duplicate (至少duplicate不相邻,否则遇到 a[mid-1] == a[mid
: ]==a[mid+1] 就不知道往哪里搜了。你的程序这种情况往前搜应该不对。
: 5,4,2,2,2,2,1,3
: 5,1,2,2,2,2,3,4
:
: 0]

m******s
发帖数: 1469
25
Bless

【在 b*******h 的大作中提到】
: g面了两轮:1. 给一个bst,给一个值,找到这个bst中与这个值最接近的数; 在月球
: 上放了一排host,怎么构架这些host,让他们不用人为操作。
: 2. 经典题:给一个数组,找出一个local minima的值。(local minima 即这个数比左
: 右两边的数小,假设没有重复。)
: 明天面试另一家公司的onsite,求bless啊!!

l**b
发帖数: 457
26
bless
l*********u
发帖数: 19053
27
bless

【在 b*******h 的大作中提到】
: g面了两轮:1. 给一个bst,给一个值,找到这个bst中与这个值最接近的数; 在月球
: 上放了一排host,怎么构架这些host,让他们不用人为操作。
: 2. 经典题:给一个数组,找出一个local minima的值。(local minima 即这个数比左
: 右两边的数小,假设没有重复。)
: 明天面试另一家公司的onsite,求bless啊!!

p**p
发帖数: 2493
28
big big bless!
b*******h
发帖数: 53
29
谢谢大家,回来更新 攒人品
这道题有前提的:1. 没有重复,2. a[0]《a[1]的话a[0]就是local minima, a
[n-1] 《 a[n-2]的话,a[n-1]是local minima。
通过画图,如果左右两个端点的某一个端点比中点小,意味着这边都有local minima,
找这一边。
如果两个端点都比中点大,意味着左边或右边有一个local minima,画图的时候可一看
到。看中点的左右相邻两点,如果是递增,local minima在左侧一定有一个, 如果递
减, 在右侧一定有一个。如果相邻点都比中点大,中点就是local minima,都比中点
小,两边都有local minima。
i*******s
发帖数: 558
30
zan & bless

a

【在 b*******h 的大作中提到】
: 谢谢大家,回来更新 攒人品
: 这道题有前提的:1. 没有重复,2. a[0]《a[1]的话a[0]就是local minima, a
: [n-1] 《 a[n-2]的话,a[n-1]是local minima。
: 通过画图,如果左右两个端点的某一个端点比中点小,意味着这边都有local minima,
: 找这一边。
: 如果两个端点都比中点大,意味着左边或右边有一个local minima,画图的时候可一看
: 到。看中点的左右相邻两点,如果是递增,local minima在左侧一定有一个, 如果递
: 减, 在右侧一定有一个。如果相邻点都比中点大,中点就是local minima,都比中点
: 小,两边都有local minima。

相关主题
Reverse String 有 O(logn)的方法么?discuss an array rearrange question
LC 怎么加题目给它?interview中被问到没有的做过的东西怎么回答?
请教电面试题心情坏到极点
进入JobHunting版参与讨论
j*****y
发帖数: 1071
31
不怕做不到,就怕想不到阿。
如果面试官说有 log N 的话,还是不难想到的。

a

【在 b*******h 的大作中提到】
: 谢谢大家,回来更新 攒人品
: 这道题有前提的:1. 没有重复,2. a[0]《a[1]的话a[0]就是local minima, a
: [n-1] 《 a[n-2]的话,a[n-1]是local minima。
: 通过画图,如果左右两个端点的某一个端点比中点小,意味着这边都有local minima,
: 找这一边。
: 如果两个端点都比中点大,意味着左边或右边有一个local minima,画图的时候可一看
: 到。看中点的左右相邻两点,如果是递增,local minima在左侧一定有一个, 如果递
: 减, 在右侧一定有一个。如果相邻点都比中点大,中点就是local minima,都比中点
: 小,两边都有local minima。

J******e
发帖数: 225
32
when a[mid-1] == a[mid]==a[mid+1], a[mid] is considered as a local minimum.

mid

【在 c********t 的大作中提到】
: 多谢讲解。基本思路应该就是这样。
: 但这道题我觉得本身限定很多。
: 第一,就是要given condition (a[0] >= a[1] && a[n-2] <= a[n-1]) 或者允许两头作
: 为local min
: 第二,就是不应该有duplicate (至少duplicate不相邻,否则遇到 a[mid-1] == a[mid
: ]==a[mid+1] 就不知道往哪里搜了。你的程序这种情况往前搜应该不对。
: 5,4,2,2,2,2,1,3
: 5,1,2,2,2,2,3,4
:
: 0]

A****e
发帖数: 310
33
多谢分享~
bless拿到大offer~
1 (共1页)
进入JobHunting版参与讨论
相关主题
请教一下各位大牛,开放性问题的事情。这个题怎么做啊?
求Largest Rectangle in Histogram的DP解法facebook intern 面经
Reverse String 有 O(logn)的方法么?关于2D, 3D平面上点的问题?
LC 怎么加题目给它?求 Maximum Subarray divide and conquer 解法
请教电面试题longestCommonPrefix 究竟怎样时间复杂度最低?
discuss an array rearrange questionG一道题
interview中被问到没有的做过的东西怎么回答?发个google的面试题
心情坏到极点面试题总结(5) - Binary search and divide and conquer
相关话题的讨论汇总
话题: mid话题: local话题: minima话题: host话题: bless