由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
JobHunting版 - 发facebook两轮面经,求第三轮经验
相关主题
一个算法题:Selecting median of three sorted arraysFind the Kth smallest element in 2 sorted
Amazon二面关于求the kth smallest in two sorted array
请教一道题百思不得其解的一道题目
请教一个常见的面试题的答案贡献Google电话面试题
Another amazon interview questionsfind max in shifted sorted array
两个Sorted Array,找K smallest element数组中找和为0的3个数,4个数
median of K sorted arrayGoogle电话面试题目
sorted arry, 找最长重复subarray问个面试题
相关话题的讨论汇总
话题: arr话题: shifted话题: logn话题: value话题: int
进入JobHunting版参与讨论
1 (共1页)
s*********e
发帖数: 36
1
昨天面完facebook第二轮,两次的面试题如下:
第一轮:
1. atoi, write exact code
2. 电话键盘上每个数字对应一系列字母,给任意长度电话号码,打印所有可能字母组
合。基本就是PIE
上的原题
第二轮:
1. Two sorted array, find their intersection, write exact code
2. Part of a sorted array is shifted, like:
1 2 3 4 5 6--> 6 5 1 2 3 4
but we don't know how many digits are shifted. Write a efficient method to
find the position of a given value in the array.
s*********e
发帖数: 36
2
xie写错了
2. Part of a sorted array is shifted, like:
=======================
应该是 1 2 3 4 5 6--> 5 6 1 2 3 4
i**********b
发帖数: 77
3
PIE 是啥?
i**********b
发帖数: 77
4
第三轮电话面试?那可能因为你前两次面试的结果不是很好也不是很坏。
如果很好就应该onsite了。
s*********e
发帖数: 36
5
Programming Interviews Exposed

【在 i**********b 的大作中提到】
: PIE 是啥?
K******g
发帖数: 1870
6
第二轮第二题,题目不清楚。能否举个例子?
如果要判断一个given value的位置,直接扫描一遍,看有多少个数比它小,不就得了?

【在 s*********e 的大作中提到】
: 昨天面完facebook第二轮,两次的面试题如下:
: 第一轮:
: 1. atoi, write exact code
: 2. 电话键盘上每个数字对应一系列字母,给任意长度电话号码,打印所有可能字母组
: 合。基本就是PIE
: 上的原题
: 第二轮:
: 1. Two sorted array, find their intersection, write exact code
: 2. Part of a sorted array is shifted, like:
: 1 2 3 4 5 6--> 6 5 1 2 3 4

l*****a
发帖数: 14598
7
那你就是O(n)
这个题可以O(Logn)的

了?

【在 K******g 的大作中提到】
: 第二轮第二题,题目不清楚。能否举个例子?
: 如果要判断一个given value的位置,直接扫描一遍,看有多少个数比它小,不就得了?

K******g
发帖数: 1870
8
你怎么做到O(logn)?不管怎么样,你都要先扫描一遍数组找到那些被shift的地方,这
个就已经是O(n)了。

【在 l*****a 的大作中提到】
: 那你就是O(n)
: 这个题可以O(Logn)的
:
: 了?

b********w
发帖数: 110
9
我上次通知说第三轮,结果后来又说把我据了。
o**********t
发帖数: 406
10
这题无穷经典,不过网上很多解法很不直观,不停地 check boundry 程序看起来很乱。
我自己的解法是:binary search look for the shift point --- O(logN)
然后按照 shift 计算一个 virtual index,整个数组就可以认为是标准排序后的,再
次 binary search 找到所需的值 --- O(logN)

【在 K******g 的大作中提到】
: 你怎么做到O(logn)?不管怎么样,你都要先扫描一遍数组找到那些被shift的地方,这
: 个就已经是O(n)了。

y**i
发帖数: 1112
11
就是二分查找啊,才能做到O(logn),不过比较麻烦的就是如果有重复元素的情况

【在 K******g 的大作中提到】
: 你怎么做到O(logn)?不管怎么样,你都要先扫描一遍数组找到那些被shift的地方,这
: 个就已经是O(n)了。

s*********e
发帖数: 36
12
确实需要多次check bound。 我写的这个不考虑重复元素的情况
int search(int arr[], int l, int r, int value )
{
int m = (l+r)/2;

if(value == arr[m]){
return m;
}
if(l > r){
return -1;
}
if(value < arr[m])
{ // number of shifted bits < length/2
if(arr[l] > arr[m])
return search(arr, l, m-1,value);
else{
// not shifted or shifted bits >= length/2
if(value < arr[l])
return search(arr, m+1, r, value);
i*****r
发帖数: 265
13
I don't think you can achieve O(logn) with repetitive elements ... You
cannot even find shift point within O(logn)

【在 y**i 的大作中提到】
: 就是二分查找啊,才能做到O(logn),不过比较麻烦的就是如果有重复元素的情况
c******f
发帖数: 2144
14
thanks
1 (共1页)
进入JobHunting版参与讨论
相关主题
问个面试题Another amazon interview questions
find median for k sorted arrays两个Sorted Array,找K smallest element
Extension problem of finding intersection of two sorted arraymedian of K sorted array
哪里有讲k-way merge的?sorted arry, 找最长重复subarray
一个算法题:Selecting median of three sorted arraysFind the Kth smallest element in 2 sorted
Amazon二面关于求the kth smallest in two sorted array
请教一道题百思不得其解的一道题目
请教一个常见的面试题的答案贡献Google电话面试题
相关话题的讨论汇总
话题: arr话题: shifted话题: logn话题: value话题: int