A*********3 发帖数: 70 | 1 Phone 1:
1.提出尽可能多的方法使一个method可以返回多个不同type的值
2.reverse string
比如 "I have a dream" -> "dream a have I"
3.判断一个binary tree是不是对称的
Phone 2:
1.给a list of number,返回前top K个(内存足够怎么做,内存不够怎么做)
2.OOD 电梯
3.找两个链表的交集
Onsite 6轮 1轮HR 1轮午餐 4轮技术 (亚马逊网络服务组)
签了保密协议,希望不要被抓到T_T
1.设计个电话本 可以用那些数据结构
我说suffix tree, 哈希表
问了这两种方法的比较,还考了suffix tree的插入,
2.问research, OOD 交通灯系统
3.写函数算一个整数的阶层 n!
又问了n很大,怎么办?
比如99%的n都在400000-900000之间,怎么提高函数的执行速度
4.给一个数组和一个数n,找出数组中的所有的对和等于n的
5.给手机键盘,给定某个按键序列比如‘1489’,返回这个按键序列生成的所有的正确
的单词
|
H******7 发帖数: 1728 | 2 reverse string 的这个答案能被满意么?
void reverse(char s[])
{
int c, i, j;
for (i = 0, j = strlen(s)-1; i < j; i++, j--) {
c = s[i];
s[i] = s[j];
s[j] = c;
}
} |
s**********v 发帖数: 1379 | 3 No....
【在 H******7 的大作中提到】 : reverse string 的这个答案能被满意么? : void reverse(char s[]) : { : int c, i, j; : for (i = 0, j = strlen(s)-1; i < j; i++, j--) { : c = s[i]; : s[i] = s[j]; : s[j] = c; : } : }
|
r*******e 发帖数: 7583 | 4 LZ的例子实际上问的是reverse word sequence in a string
【在 H******7 的大作中提到】 : reverse string 的这个答案能被满意么? : void reverse(char s[]) : { : int c, i, j; : for (i = 0, j = strlen(s)-1; i < j; i++, j--) { : c = s[i]; : s[i] = s[j]; : s[j] = c; : } : }
|
s*******t 发帖数: 248 | 5 what you wrote is just part of the question.
【在 H******7 的大作中提到】 : reverse string 的这个答案能被满意么? : void reverse(char s[]) : { : int c, i, j; : for (i = 0, j = strlen(s)-1; i < j; i++, j--) { : c = s[i]; : s[i] = s[j]; : s[j] = c; : } : }
|
s*******t 发帖数: 248 | 6 Thanks for sharing.
基本上所有题目都很典型,问一下phone1 第一个提出多种方法返回不同type的值。
除了基本的返回值外还有通过参数返回,还有别的吗?
【在 A*********3 的大作中提到】 : Phone 1: : 1.提出尽可能多的方法使一个method可以返回多个不同type的值 : 2.reverse string : 比如 "I have a dream" -> "dream a have I" : 3.判断一个binary tree是不是对称的 : Phone 2: : 1.给a list of number,返回前top K个(内存足够怎么做,内存不够怎么做) : 2.OOD 电梯 : 3.找两个链表的交集 : Onsite 6轮 1轮HR 1轮午餐 4轮技术 (亚马逊网络服务组)
|
i**9 发帖数: 351 | 7 谁能给聊聊,这些OOD的题到底怎么准备,面试的想要考查什么?
【在 A*********3 的大作中提到】 : Phone 1: : 1.提出尽可能多的方法使一个method可以返回多个不同type的值 : 2.reverse string : 比如 "I have a dream" -> "dream a have I" : 3.判断一个binary tree是不是对称的 : Phone 2: : 1.给a list of number,返回前top K个(内存足够怎么做,内存不够怎么做) : 2.OOD 电梯 : 3.找两个链表的交集 : Onsite 6轮 1轮HR 1轮午餐 4轮技术 (亚马逊网络服务组)
|
t**********n 发帖数: 145 | 8 多谢分享!Bless!
保密协议我仔细阅读了一下,
只是说不能透露跟Amazon的业务有关的内容就好了。
面试题应该都不在其保护范围内的。
呵呵。
Phone 1:
1.提出尽可能多的方法使一个method可以返回多个不同type的值
2.reverse string
比如 "I have a dream" -> "dream a have I"
3.判断一个binary tree是不是对称的
Phone 2:
1.给a list of number,返回前top K个(内存足够怎么做,内存不够怎么做)
2.OOD 电梯
3.找两个链表的交集
Onsite 6轮 1轮HR 1轮午餐 4轮技术 (亚马逊网络服务组)
签了保密协议,希望不要被抓到T_T
1.设计个电话本 可以用那些数据结构
我说suffix tree, 哈希表
问了这两种方法的比较,还考了suffix tree的插入,
2.问research, OOD 交通灯系统
3.写函数算一个整数的阶层 n!
又问了n很大,怎么办?
比如99%的n都在400000-900000之间,怎么提高函数的执行速度
4.给一个数组和一个数n,找出数组中的所有的对和等于n的
5.给手机键盘,给定某个按键序列比如‘1489’,返回这个按键序列生成的所有的正确
的单词
【在 A*********3 的大作中提到】 : Phone 1: : 1.提出尽可能多的方法使一个method可以返回多个不同type的值 : 2.reverse string : 比如 "I have a dream" -> "dream a have I" : 3.判断一个binary tree是不是对称的 : Phone 2: : 1.给a list of number,返回前top K个(内存足够怎么做,内存不够怎么做) : 2.OOD 电梯 : 3.找两个链表的交集 : Onsite 6轮 1轮HR 1轮午餐 4轮技术 (亚马逊网络服务组)
|
j*****u 发帖数: 1133 | 9 假设问的是static language
generics/template
polymorphy: return a instance of subclass or class that implements an
interface
return object (weakly typed)
use out/ref parameters
dynamic in C# 4
【在 s*******t 的大作中提到】 : Thanks for sharing. : 基本上所有题目都很典型,问一下phone1 第一个提出多种方法返回不同type的值。 : 除了基本的返回值外还有通过参数返回,还有别的吗?
|
j*****u 发帖数: 1133 | 10 lz看起来答得应该不错,recruiter说多久出结果?
Bless!
【在 A*********3 的大作中提到】 : Phone 1: : 1.提出尽可能多的方法使一个method可以返回多个不同type的值 : 2.reverse string : 比如 "I have a dream" -> "dream a have I" : 3.判断一个binary tree是不是对称的 : Phone 2: : 1.给a list of number,返回前top K个(内存足够怎么做,内存不够怎么做) : 2.OOD 电梯 : 3.找两个链表的交集 : Onsite 6轮 1轮HR 1轮午餐 4轮技术 (亚马逊网络服务组)
|
|
|
c******e 发帖数: 1032 | |
m****i 发帖数: 650 | 12 5.给手机键盘,给定某个按键序列比如‘1489’,返回这个按键序列生成的所有的正确
的单词
这个用什么做 |
r*******e 发帖数: 7583 | 13 把字典放到trie里
序列做递归permutation的过程中,检测当前的部分序列是不是在trie中
【在 m****i 的大作中提到】 : 5.给手机键盘,给定某个按键序列比如‘1489’,返回这个按键序列生成的所有的正确 : 的单词 : 这个用什么做
|
S******n 发帖数: 1009 | 14 good luck
够怎么做)
【在 A*********3 的大作中提到】 : Phone 1: : 1.提出尽可能多的方法使一个method可以返回多个不同type的值 : 2.reverse string : 比如 "I have a dream" -> "dream a have I" : 3.判断一个binary tree是不是对称的 : Phone 2: : 1.给a list of number,返回前top K个(内存足够怎么做,内存不够怎么做) : 2.OOD 电梯 : 3.找两个链表的交集 : Onsite 6轮 1轮HR 1轮午餐 4轮技术 (亚马逊网络服务组)
|
r*****b 发帖数: 8 | 15 给a list of number, 返回前top K个:用min-heap?不过如果内存不够怎么办啊?
找两个链表的交集,具体是什么意思?
算阶乘:
可以事先存好一些值,比如存好K!, 当N>K时,就只要计算N*(N-1)*...*(K+1)*(K!)
这样做可以么?
设计电话簿的题:为什么要用suffix tree啊?
【在 A*********3 的大作中提到】 : Phone 1: : 1.提出尽可能多的方法使一个method可以返回多个不同type的值 : 2.reverse string : 比如 "I have a dream" -> "dream a have I" : 3.判断一个binary tree是不是对称的 : Phone 2: : 1.给a list of number,返回前top K个(内存足够怎么做,内存不够怎么做) : 2.OOD 电梯 : 3.找两个链表的交集 : Onsite 6轮 1轮HR 1轮午餐 4轮技术 (亚马逊网络服务组)
|
s****h 发帖数: 15 | 16
In-place sort?
【在 r*****b 的大作中提到】 : 给a list of number, 返回前top K个:用min-heap?不过如果内存不够怎么办啊? : 找两个链表的交集,具体是什么意思? : 算阶乘: : 可以事先存好一些值,比如存好K!, 当N>K时,就只要计算N*(N-1)*...*(K+1)*(K!) : 这样做可以么? : 设计电话簿的题:为什么要用suffix tree啊?
|
s****h 发帖数: 15 | 17
3.判断一个binary tree是不是对称的
这个是怎么做的? 我能想到的是用一个stack, pre-order遍历,直到root,然后接下来
的遍历中,
每碰到一个节点,pop一个stack中的节点,比对,直到结束。 问题是如果限制内存的
话,怎么做?
【在 A*********3 的大作中提到】 : Phone 1: : 1.提出尽可能多的方法使一个method可以返回多个不同type的值 : 2.reverse string : 比如 "I have a dream" -> "dream a have I" : 3.判断一个binary tree是不是对称的 : Phone 2: : 1.给a list of number,返回前top K个(内存足够怎么做,内存不够怎么做) : 2.OOD 电梯 : 3.找两个链表的交集 : Onsite 6轮 1轮HR 1轮午餐 4轮技术 (亚马逊网络服务组)
|
l*****a 发帖数: 559 | 18 应该是内存无法存入整个数组。
用external sort吧。
【在 s****h 的大作中提到】 : : 3.判断一个binary tree是不是对称的 : 这个是怎么做的? 我能想到的是用一个stack, pre-order遍历,直到root,然后接下来 : 的遍历中, : 每碰到一个节点,pop一个stack中的节点,比对,直到结束。 问题是如果限制内存的 : 话,怎么做?
|
l*****a 发帖数: 14598 | 19 看来现在亚麻没有小黑屋?
楼主9月份发过面经。。。。
【在 A*********3 的大作中提到】 : Phone 1: : 1.提出尽可能多的方法使一个method可以返回多个不同type的值 : 2.reverse string : 比如 "I have a dream" -> "dream a have I" : 3.判断一个binary tree是不是对称的 : Phone 2: : 1.给a list of number,返回前top K个(内存足够怎么做,内存不够怎么做) : 2.OOD 电梯 : 3.找两个链表的交集 : Onsite 6轮 1轮HR 1轮午餐 4轮技术 (亚马逊网络服务组)
|
l*****a 发帖数: 14598 | 20 这个。。。。
只有一道题楼主给意见了。。。
【在 j*****u 的大作中提到】 : lz看起来答得应该不错,recruiter说多久出结果? : Bless!
|
|
|
i**9 发帖数: 351 | 21 写了一个 检查bst对称的
bool symmetrical(Node * root){
if(root==NULL){
return true;
}
return symmetrical(root->left,root->right);
}
bool symmetrical(Node * l,Node * r){
if(l==NULL && r==NULL){
return true;
}
if(l==NULL && r!=NULL){
return false;
}
if(l!=NULL && r==NULL){
return false;
}
if(l->data!=r->data){
return false;
}
return symmetrical(l->left,r->right)&&symmetrical(l->right,r->left);
}
【在 A*********3 的大作中提到】 : Phone 1: : 1.提出尽可能多的方法使一个method可以返回多个不同type的值 : 2.reverse string : 比如 "I have a dream" -> "dream a have I" : 3.判断一个binary tree是不是对称的 : Phone 2: : 1.给a list of number,返回前top K个(内存足够怎么做,内存不够怎么做) : 2.OOD 电梯 : 3.找两个链表的交集 : Onsite 6轮 1轮HR 1轮午餐 4轮技术 (亚马逊网络服务组)
|
l*****a 发帖数: 14598 | 22 Please merge
if(l==NULL && r!=NULL){
return false;
}
if(l!=NULL && r==NULL){
return false;
To
if(!l||!r) return false;
thanks
}【 在 icn9 (icn) 的大作中提到: 】 |
i***1 发帖数: 147 | 23
小黑屋还是有的 有3种可能性
1.录用
2.recycle 到别的组 如果别的组感兴趣 重新开始面
3.小黑屋 1年都不会理你
根据performance有不同的结局 有一定几率出现隐藏结局...
【在 l*****a 的大作中提到】 : 看来现在亚麻没有小黑屋? : 楼主9月份发过面经。。。。
|
r*******e 发帖数: 7583 | 24 其实可以把前三个判断合并成
if((l == NULL) ^ (r == NULL))
return false;
【在 l*****a 的大作中提到】 : Please merge : if(l==NULL && r!=NULL){ : return false; : } : if(l!=NULL && r==NULL){ : return false; : To : if(!l||!r) return false; : thanks : }【 在 icn9 (icn) 的大作中提到: 】
|
j*****u 发帖数: 1133 | 25 这个赞!
同志们,努力争取早日把隐藏结局打出来
我先来揣测一下:
连续被amazon拒掉7次,然后连续7次拿到offer并decline,出现隐藏结局1:进入小黑屋
终生不得出来
连续recycle到别的组N次,没有offer也没有reject,出现隐藏结局2(完美结局): 收到
HR MM的求爱信,HR MM拍胸脯保证说服hiring manager给offer
。。。
【在 i***1 的大作中提到】 : : 小黑屋还是有的 有3种可能性 : 1.录用 : 2.recycle 到别的组 如果别的组感兴趣 重新开始面 : 3.小黑屋 1年都不会理你 : 根据performance有不同的结局 有一定几率出现隐藏结局...
|
l*****a 发帖数: 14598 | 26 wait
1. the first one return TRUE
2. you made the code hard to understand,at least u need add comment
【在 r*******e 的大作中提到】 : 其实可以把前三个判断合并成 : if((l == NULL) ^ (r == NULL)) : return false;
|
l*****a 发帖数: 559 | 27 Why you gays always try to write smart code?
The original version is good enough and easy to follow. |
h**********d 发帖数: 4313 | 28 bless lz
这题可以详细说说 suffix tree是怎么存电话本信息的吗,谢谢!
1.设计个电话本 可以用那些数据结构
我说suffix tree, 哈希表
问了这两种方法的比较,还考了suffix tree的插入,
【在 A*********3 的大作中提到】 : Phone 1: : 1.提出尽可能多的方法使一个method可以返回多个不同type的值 : 2.reverse string : 比如 "I have a dream" -> "dream a have I" : 3.判断一个binary tree是不是对称的 : Phone 2: : 1.给a list of number,返回前top K个(内存足够怎么做,内存不够怎么做) : 2.OOD 电梯 : 3.找两个链表的交集 : Onsite 6轮 1轮HR 1轮午餐 4轮技术 (亚马逊网络服务组)
|
s****h 发帖数: 15 | 29 这个Symmetric binary trees是如何定义的?
我看网上一个定义是: Let us call a binary tree symmetric if you can draw a
vertical line through the root node and then the right subtree is the mirror
image of the left subtree
对这种定义,你的这个好像不对~
【在 i**9 的大作中提到】 : 写了一个 检查bst对称的 : bool symmetrical(Node * root){ : if(root==NULL){ : return true; : } : return symmetrical(root->left,root->right); : } : bool symmetrical(Node * l,Node * r){ : if(l==NULL && r==NULL){ : return true;
|
d******u 发帖数: 397 | 30 同想知道。。。哪位牛人给聊聊?
【在 i**9 的大作中提到】 : 谁能给聊聊,这些OOD的题到底怎么准备,面试的想要考查什么?
|
|
|
l*****a 发帖数: 14598 | 31 return symmetrical(l->left,r->right)&&symmetrical(l->right,r->left);
哪儿不对了?
我觉得他写得挺对
mirror
【在 s****h 的大作中提到】 : 这个Symmetric binary trees是如何定义的? : 我看网上一个定义是: Let us call a binary tree symmetric if you can draw a : vertical line through the root node and then the right subtree is the mirror : image of the left subtree : 对这种定义,你的这个好像不对~
|
l*****a 发帖数: 14598 | 32 for each node(number),link all related names in a linked list,
then when u input the number,u can show all of them
assume a: 011
b: 012
c: 0111
0 a,b,c
/
1 a,b,c
/ \
1a,c 2 b
/
1 c
【在 h**********d 的大作中提到】 : bless lz : 这题可以详细说说 suffix tree是怎么存电话本信息的吗,谢谢! : 1.设计个电话本 可以用那些数据结构 : 我说suffix tree, 哈希表 : 问了这两种方法的比较,还考了suffix tree的插入,
|
l*****a 发帖数: 14598 | 33 简单说就是
把现实世界中的事物场景抽象为类定义,
看看一个scenario需要定义哪些类,每个类提供什么属性,方法。。
如何协同工作。
可能会用到design pattern,但是很多时候不绝对
如果有合适的pattern用更好,不用的话,只要你说的合情合理
我认为业可以给分
这东西本来就没有正确答案。。。
【在 d******u 的大作中提到】 : 同想知道。。。哪位牛人给聊聊?
|
h**********d 发帖数: 4313 | 34 这是prefix tree吧
楼主说的suffix tree是怎么用的?
【在 l*****a 的大作中提到】 : for each node(number),link all related names in a linked list, : then when u input the number,u can show all of them : assume a: 011 : b: 012 : c: 0111 : 0 a,b,c : / : 1 a,b,c : / \ : 1a,c 2 b
|
g*********s 发帖数: 1782 | 35 co-confused. prefix and suffix tree are different.
【在 h**********d 的大作中提到】 : 这是prefix tree吧 : 楼主说的suffix tree是怎么用的?
|
e******a 发帖数: 176 | 36 in-order print node level, and determine if the output string is
symmetric.
【在 s****h 的大作中提到】 : 这个Symmetric binary trees是如何定义的? : 我看网上一个定义是: Let us call a binary tree symmetric if you can draw a : vertical line through the root node and then the right subtree is the mirror : image of the left subtree : 对这种定义,你的这个好像不对~
|
e******a 发帖数: 176 | 37 能不能给说说,什么叫"协同工作“?给个例子可以么?
【在 l*****a 的大作中提到】 : 简单说就是 : 把现实世界中的事物场景抽象为类定义, : 看看一个scenario需要定义哪些类,每个类提供什么属性,方法。。 : 如何协同工作。 : 可能会用到design pattern,但是很多时候不绝对 : 如果有合适的pattern用更好,不用的话,只要你说的合情合理 : 我认为业可以给分 : 这东西本来就没有正确答案。。。
|
g*********s 发帖数: 1782 | 38 this is necessary condition, not sufficient.
【在 e******a 的大作中提到】 : in-order print node level, and determine if the output string is : symmetric.
|
e******a 发帖数: 176 | |
c****m 发帖数: 179 | 40
因为默认是不带标号的,同层的string对称,由于中间的null节点,实际的node不一定
对称。
可以给每一个节点算标号。这样BFS以后算对称。
【在 e******a 的大作中提到】 : 给个反例行么?我怎么想不到?
|
|
|
h**********d 发帖数: 4313 | 41 is the algorithm on 21st floor correct or not?? |
e******a 发帖数: 176 | 42 没有标号啊?同层节点不是挨着打印出来的,是跟着上层节点的层号产茶打印的。
【在 c****m 的大作中提到】 : : 因为默认是不带标号的,同层的string对称,由于中间的null节点,实际的node不一定 : 对称。 : 可以给每一个节点算标号。这样BFS以后算对称。
|
A*********3 发帖数: 70 | 43
我就说定义一个Holder类,要返回的object都在这个Holder类里作为public,final的
attribute,要返回多少就定义多少,里有这段
对方好像还算满意
【在 s*******t 的大作中提到】 : Thanks for sharing. : 基本上所有题目都很典型,问一下phone1 第一个提出多种方法返回不同type的值。 : 除了基本的返回值外还有通过参数返回,还有别的吗?
|
A*********3 发帖数: 70 | 44
有的,吃饭的时候被manager问了很多
【在 c******e 的大作中提到】 : 有没有问behavior的问题?
|
A*********3 发帖数: 70 | 45
谢谢!已经搞定了
【在 j*****u 的大作中提到】 : lz看起来答得应该不错,recruiter说多久出结果? : Bless!
|
A*********3 发帖数: 70 | 46
可以事先存好一些值,比如存好K!, 当N>K时,就只要计算N*(N-1)*...*(K+1)*(K!)
我也是这么回答的
suffix tree-因为是按照姓名存储的,比如Mary就一个字母一个树节点存储,a是M的
孩子
【在 r*****b 的大作中提到】 : 给a list of number, 返回前top K个:用min-heap?不过如果内存不够怎么办啊? : 找两个链表的交集,具体是什么意思? : 算阶乘: : 可以事先存好一些值,比如存好K!, 当N>K时,就只要计算N*(N-1)*...*(K+1)*(K!) : 这样做可以么? : 设计电话簿的题:为什么要用suffix tree啊?
|
A*********3 发帖数: 70 | 47
只要没有onsite就不会被关小黑屋^_^
【在 l*****a 的大作中提到】 : 看来现在亚麻没有小黑屋? : 楼主9月份发过面经。。。。
|
t****0 发帖数: 235 | 48 did he try to calculate every node has a symmetric sub trees?
how about do a in order walk to get an array
len = array.length
for (int i = 0; i < len; i ++)
{
if ( array[i] != array[len -i]) return false;
}
mirror
【在 s****h 的大作中提到】 : 这个Symmetric binary trees是如何定义的? : 我看网上一个定义是: Let us call a binary tree symmetric if you can draw a : vertical line through the root node and then the right subtree is the mirror : image of the left subtree : 对这种定义,你的这个好像不对~
|