📜  亚马逊面试经历|第 273 组(校内)(1)

📅  最后修改于: 2023-12-03 15:21:44.094000             🧑  作者: Mango

亚马逊面试经历|第 273 组(校内)

背景介绍

亚马逊(Amazon)是世界上最大的在线零售商,也是世界上最大的云计算服务提供商之一。它是由杰夫·贝索斯(Jeff Bezos)在1995年创立的,目前总部位于美国华盛顿州西雅图。

面试流程

该校内组面试流程如下:

  1. 电话面试
  2. 在线编程测试
  3. 线上技术面试
  4. 终面
电话面试

面试官通过电话对我进行了一些基础问题的提问,包括但不限于下列几个方面:

  • 编程语言
  • 数据结构与算法
  • 操作系统和网络

其中最难的部分是操作系统和网络,涉及到了诸如进程、线程、TCP/IP等方面的知识点。面试官对我的答案进行了提问和追问,并且提供了一些实际应用场景供我思考。

在线编程测试

在线编程测试过程中,我被要求完成两道算法题。

题目1

给定一个数组,求出两个不重复的元素之和为 target 的下标。

样例输入:

[1, 3, 5, 7, 9]
10

样例输出:

[0, 2]

解释:

1 + 9 = 10, 1 和 9 的下标是 0 和 4,它们都没有重复。
题目2

给定一个数组 nums 和一个值 val,在数组中移除所有值等于 val 的元素,并返回新数组的长度。

说明:

  • 不要为其他数组创建额外的空间,您必须通过在 O(1)额外内存中就地修改输入数组来实现此目的。
  • 元素的顺序可以改变。不需要考虑数组中超出新长度后面的元素。

样例输入:

[0,1,2,2,3,0,4,2]
2

样例输出:

5

解释:

函数应该返回新的长度 5,并在 nums 中修改后五个元素的前五个元素为 0、1、3、0 和 4。
线上技术面试

线上技术面试主要是围绕我的简历上的项目和技术栈进行提问和追问。其中最具挑战的问题包括但不限于下列几个方面:

  • 分布式系统
  • 数据库设计
  • 微服务架构

面试官也会对我的工作经历做出相关问题和提问,并且要求我举出实际案例进行说明。

终面

终面主要是由业务负责人和 HR 进行问询,主要包括劳动合同、工资福利等方面的问题。同时,也会让我对公司及其文化进行简单介绍,并对个人做出相关的问题和提问。

总结

亚马逊的面试流程非常严格,难度较大。在面试过程中,需要注意梳理个人简历和技术栈,并提前准备相关的知识点和难点。同时,需要注重细节,尤其是在编程测试环节,要注重代码的细节和逻辑的合理性。