亚马逊面试经验分析和解读|S9

2021年3月19日17:23:54 发表评论 754 次浏览

怎么开始的?

我在链接上完成并提交了4个程序:https://amazon.interviewstreet.com/challenges/dashboard/#problems

后来我才知道通过此链接的招聘已经结束。因此, 我联系了亚马逊的一些人力资源人员, 并获得了在线编程测试的新链接。

在线编程回合:(5种方法, 2小时)

1)给出一个包含小写英文字母和空格的句子。它可能包含多个空格。获取每个单词的第一个字母, 然后将结果作为字符串返回。结果不应包含任何空格。完成以下方法:

静态字符串getFirstLetterWord(String text){}

2)给定一个数组。迭代给定次数。然后返回结果元素的总和。

例如:数组为{1, 2, 5, 6}, N = 2

第一次迭代后:{2-1, 5-2, 6-5} = {1, 3, 1}

2nd之后:{3-1, 1-3} = {2, -2}

总和是2 +(-2)= 0

如果数组中仅剩余一个元素, 则在应用迭代后该元素将保持不变。完成方法。

静态int iterateSequence(Vector <Integer> a, int N){}

3)在BST中找到第N个最大元素。完成方法。

staticintnLargeBST(节点根, int N){}

鉴于

class Node
{
    Node left, right;
    int data;
    Node(intnewData)
    {
        left = right = null;
        data = newData;
    }
}

4)交换链接列表中的相邻节点。更改链接, 而不是数据。完成方法。

例如:1、2、3、4

o / P:2, 1, 4, 3

例如:1、2、3、4、5

op:2、1、4、3、5

class Node {
  Node next;
  int val;
}

static Node swapAdjacentNodes(Node head) {}

5)找出最长递增子序列的长度。

例如1。

i / p:1、2、3

o / p:3

说明:顺序在增加

例如2

i / p:4、5、6、7、8、1、2、1、2、3、5、4、6、7、8、9、0、6、7

o / p:8

xp:1, 2, 3, 4, 6, 7, 8, 9

例如3

i / p:1、2、9、4、5、10、7、8

o / p:6

xp:1, 2, 4, 5, 7, 8

例如4

i / p:20、3、22、5、50、34、49、91, 110

o / p:6

xp:20, 22, 34, 49, 91, 110

OR

3, 5, 34, 49, 91, 110

完成方法。

静态整数lengthLIS(Vector <Integer>序列){}

电话面试1:

1)一个M x N矩阵, 先填充0, 再填充1。查找包含最少0的行。例如。

0 0000 1

0 0 1 111

0 00 1 11

答案是2nd行。 (行索引:1)

2)查找给定的两个字符串是否彼此相同。

3)给定大小为N的数组, 将前d个元素移到最后一个元素。

例如{1, 2, 3, 4, 5}, d = 2

  • 输出:{3, 4, 5, 1, 2}

电话面试2:

1)给定一个BST, 找到包含等于或小于输入值的值的节点。

2)Kadane的一维数组算法

3)给定一个点P和二维空间中的其他N个点, 请从N个点中找到K个点, 这些点更接近P.

面对面面试1 :(海德拉巴, 日期:2012年11月8日)

1)给定一个包含整数的单链表, 将奇数放在开头, 将偶数放在结尾。奇数值和偶数值的相对顺序应保持原样。

例如34、45、78、10、33、5

  • o / p:45、33、5、34、78、10

2)给定N个整数集, 请删除一些集合, 以使其余所有集合彼此不交集。找到最佳解决方案, 以使最后剩余的套数最大。

面对面面试2(与经理):

1)给定大小为N的数组, 大小为W的窗口将以幻灯片S的增量在其上滑动。如果窗口到达末尾, 则应在此停下来。查找一个N, S, W形式的公式, 以便我们可以找到有效窗口的数量。编写程序以在每个窗口中查找最小值并打印。优化它。

例如{1, 2, 3, 4, 5}, W = 2, S = 1

第一个窗口:{1, 2}分钟= 1

第二个窗口(以S = 1递增):{2, 3}, 最小值= 2

最后一个窗口:{4, 5}, 最小值= 4

数组可能未排序。为了简单起见, 我采用了排序数组。

面对面面试3:

1)用给定的最小值和最大值修剪给定的BST。这意味着删除值小于min或大于max的节点。编写迭代和递归–两种解决方案。

2)给定一个字符串数组, 请找到由同一数组中包含的其他字符串的最大数量组成的字符串。

例如" rat", " cat", " abc", " xyz", " abcxyz", " ratcatabc", " xyzcatratabc"

答案:" xyzcatratabc"

" abcxyz"包含另外2个字符串,

" ratcatabc"还包含另外3个字符串,

" xyzcatratabc"包含另外4个字符串

3)查找sqrt(N)的整数值。不要使用任何库函数或任何数学解。

面对面面试4(与开幕单元负责人):

1)给定一个二维整数数组, 在数组中找到值1, 并将所有这些行和列设置为1, 其中包含值之一为1。

2)假设你在像naukri.com这样的公司工作。你需要收集印度年龄在25至40岁之间的所有软件工程师的电子邮件ID和联系电话。你会怎么做?

3)假设你祖父的年龄在计算机上工作。他对计算机一无所知。他抱怨说它运行良好, 但是在过去的两天里, 它变得非常缓慢。你将如何解决?可能是什么原因?

4)

为餐厅设计一个IVR系统, 客户可以在其中预订午餐和/或晚餐的餐桌。提前2或7天预订/任意选择。在收到用户请求后, 请回复他, 你将在5分钟内确认该请求。检查可用性并发送短信确认。如果发送了SMS, 则假定客户是真实的。如果SMS传递不正确, 请丢弃用户请求, 因为它不是真实的。

i)在此过程中, 你如何获取客户的姓名和电子邮件ID?

ii)你可以为回头客做什么?你将如何识别回头客?

iii)如果要求的团队人数大于桌子人数, 你会怎么做?例如。表格大小为6、4和2时, 要求10个人。

祝一切顺利!

谢谢

Hitesh

亚马逊的所有练习题

!

木子山

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: