📜  亚马逊面试经历 | 411 (SDE-1)(1)

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

亚马逊面试经历 | 411 (SDE-1)

最近我参加了亚马逊的SDE-1面试,并有幸进入了面试环节,虽然我最终没有得到这个职位,但我从中学到了很多东西。在这篇文章中,我将分享我的亚马逊面试经历和一些有用的建议。

笔试环节

首先,我需要参加在线笔试,这是亚马逊面试的第一步。笔试内容分为两部分:第一部分是15道选择题,这些题目测试了我的算法知识、数据结构和编程语言方面的能力。第二部分是两道coding题目,时间限制为90分钟。

Markdown代码片段:

### Multiple Choice Questions
1. Which of the following is not a sorting algorithm?
a. Insertion Sort
b. Merge Sort
c. Quick Sort
d. Breath-First Search

2. Which of the following data structures does not allow duplicate values?
a. Set
b. List
c. Map
d. Heap

...

### Coding Questions

#### Question 1
Given an array A of integers, find the maximum sum of contiguous subarray of A.
Function signature: `int maxContiguousSubarraySum(int A[], int n)`

...

#### Question 2
...
电话面试

接下来,我通过了笔试,并通过了电话面试。这次面试时长为45分钟,由一位资深工程师主导,主要涉及算法和数据结构。

他先问了我一些介绍自己的问题,然后开始了正式的面试。题目包括链表、树、可旋转矩阵和字符串匹配等等。在整个面试过程中,我注意到这个工程师非常注重细节,并且让我解释我的算法和思路。

Markdown代码片段:

### Interview Questions

1. Reverse a linked list.
2. Check if a binary tree is symmetric.
3. Given an n x n matrix, rotate it by 90 degrees clockwise.
4. How does the "grep" command work?
5. Implement strstr().

...
面试现场

最后,我受邀参加了现场面试。这是在亚马逊的办公室进行的。现场面试由四轮组成,每轮45分钟。每轮都有一个不同的面试官,他们都是亚马逊的工程师。

在面试中,我得到了一些与线性代数和统计学相关的问题。另外,我还需要编写关于设计题、算法和数据结构的代码。这些问题中有一些是黑板编程,另外的则是电脑编程。

Markdown代码片段:

### Onsite Interview Questions

#### Round 1
1. Explain the difference between correlation and regression in statistics.
2. Design a system for a parking lot.

#### Round 2
1. Given two linked lists, write a function to find the sum of the two linked lists.
2. Design a system for generating unique IDs across multiple machines.

#### Round 3
1. Given a list of integers and an integer k, find the kth largest element in the list.
2. Write a function to rotate a 2D matrix by 90 degrees clockwise.

#### Round 4
1. Given a sorted array and a target value, find the starting and ending position of a given target value.
2. What is an AVL tree?
总结

亚马逊的面试要求很高,需要在很多方面都有扎实的基础。尽管我的面试过程没有最终被聘用的结果,但是我看到了自己的不足和缺点。这个经历给我很大的启示,我决定更加努力的学习和打磨自己的技能。

Markdown代码片段:

## Conclusion

The Amazon interview process is rigorous and demands a strong foundation in many areas. Although my interview process did not lead to a job offer, I learned a lot about my own strengths and areas for improvement. This experience has been very valuable, and has inspired me to work even harder to improve my skills.