📜  Expedia 面试经历 | (校内实习)

📅  最后修改于: 2021-11-17 09:51:20             🧑  作者: Mango

Expedia 为全职和实习生访问了我们的校园,而我坐在实习生中。过程包括在线测试轮次和 3 轮面试。

在线编码测试(1 小时 30 分钟)

他们的截止值为 0,测试是在 HackerRank 上进行的。

测试包括 10 个 MCQ 和 2 个编码问题。

MCQ 围绕着 OS、OOP、数据结构和算法。

编码问题如下:

  1. 您总共有n 个硬币要形成楼梯形状,其中每个第k行必须正好有k 个硬币。给定n ,找出可以形成的完整楼梯行的总数。 (即使是二分搜索也为某些测试用例提供了 TLE,只有 O(1) 解决方案可以通过所有测试用例)
  2. 给定一条可以无限量行驶的道路。道路的索引从 0 到 n 开始。有 m 辆车的起始和结束索引以 2 个数组的形式给出。我们必须找到汽车从未行驶过的最大差距。 (这个问题也有时间和内存限制)

第 1 轮:技术面试( 1小时 – 1小时 30 分钟)

首先她让我做自我介绍,并说一些我简历中没有提到的事情。

然后问了我一个编码问题:

给定一个排序和旋转的数组和一个元素,在完全排序的数组中找到该元素的索引。 (这个问题涉及处理很多情况,查找数组是左旋还是右旋,然后通过二分搜索找到旋转点和给定元素的索引。我被要求对所有这些进行编码)

在我编写上述问题的代码时,她问我

  • 什么是运行时和动态多态?
  • Java是完全面向对象的编程语言吗?
  • 以及一些我不记得的与操作系统相关的问题(我认为这是为了检查您在多任务处理方面的能力)

下一个问题是:

https://www.geeksforgeeks.org/find-the-number-occurring-odd-number-of-times/

查找数组中出现奇数次的次数

(我给了她一个使用 2 个循环的 O(n^2) 解决方案,一个使用 Hashmap 的 O(n) 解决方案和在 O(n) 中运行的 XOR 解决方案。然后她问我是否能想到一个解决方案 O (1)空间复杂度和小于0(n)时间复杂度)

然后很多关于hashmap的问题:

  • 什么是散列
  • 哈希图中使用了哪种数据结构
  • c++ STL 映射是如何设计的/哈希映射的内部功能
  • 设计你自己的Hashmap

接下来是,

一个数字在链表中表示,每个数字对应链表中的一个节点。加1。我被要求对此进行编码。

然后这个问题修改为:一个数字在链表中表示,使得几位数字对应链表中的一个节点。加1。示例:数字 2323499 表示为 23->2->349->9 应该有一个输出

23->2->350->0(每个节点的位数不均匀,结果应该与给定节点的每个节点的位数相同。)

然后是一个谜题:10个硬币的谜题

https://www.geeksforgeeks.org/puzzle-24-10-coins-puzzle/

最后一个问题是:

在不使用额外内存的情况下反转堆栈。我被要求告诉方法,然后编写代码。

(https://www.geeksforgeeks.org/reverse-stack-without-using-extra-space/)

第 2 轮:技术面试(45 分钟 – 1 小时)

采访以一般性介绍和一些关于我的爱好的讨论开始。

然后让我告诉我的方法并为 DP 问题编写算法:Maximum size square sub-matrix with all 1s

https://www.geeksforgeeks.org/maximum-size-sub-matrix-with-all-1s-in-a-binary-matrix/

下一个问题与以下问题相同:在 geeksforgeeks 中给出的所有橙子腐烂所需的最短时间,语言略有变化。这要通过 BFS 来解决。

https://www.geeksforgeeks.org/minimum-time-required-so-that-all-oranges-become-rotten/

与此同时,她问了我很多问题,其中一些是:

  • 编译器如何为变量分配内存地址
  • 什么是记忆
  • 网址是如何工作的
  • URL中写HTTPS的意义
  • 什么是 DNS 服务器
  • 我在编译器中遇到的所有错误以及这些错误背后的原因
  • 您使用过的所有排序算法。你可以为堆排序和快速排序代码编写代码吗?

然后她问我对这家公司的了解,并给了我一个现实生活中的问题:给定航班的起点和终点,例如:德里到孟买、德里到勒克瑙、孟买到果阿、勒克瑙到马杜赖、马杜赖到果阿。问我关于我更喜欢的数据结构,然后是如何优化航班预订,即找到一个航班,比如从德里到果阿,中间停靠次数最少。

所有这一切都以著名的绳索拼图结束:

https://www.geeksforgeeks.org/puzzle-1-how-to-measure-45-minutes-using-two-identical-wires/

第 3 轮:

人力资源回合(45 分钟 – 1 小时)

这是最有趣的采访,由导演拍摄。在这期间我真的很开心。首先面试官问了我简历中提到的项目及其实际应用。

我的大部分项目都在 ML 中,所以他给了我一些行业在对数据进行验证时面临的现实问题。

然后我们就亚马逊推荐系统的工作进行了 20 分钟的讨论。然后他让我推荐一些基于 ML/AI 的亚马逊新功能,可以改善他们的业务。

接下来是关于如何使用机器学习为游客提供良好体验的一些讨论。

最后,他问我如何看待自己在未来几年的成长。

最后,他问我有没有什么问题要问他。

几个小时后宣布结果,我被选中了🙂