2020 年 12 月上旬,LinkedIn 的一名招聘人员联系我申请软件实习职位。所以我填写了提供的申请表。
整个过程包括 1 次在线评估和 2 次面试。
在线评估
日期 : 2020 年 12 月 14 日
平台:HackerRank
时间:90分钟
问题数量:4
问题 1
找出数字的第 4 个最低有效数字。
解决方法:https://www.geeksforgeeks.org/print-kth-least- Significant-bit-number/
问题2
给定一个数字数组,找到总和等于目标值的唯一对的数量。
解决方法:https://www.geeksforgeeks.org/count-distinct-pairs-with-given-sum/
问题 3
给定雨伞的容量数组,找出恰好能覆盖 n 个人的最少雨伞数量。
解决方法:https://www.geeksforgeeks.org/find-minimum-number-of-coins-that-make-a-change/
问题 4
给定一个加权图,如果每条边位于节点 1 和节点 N 之间的任何最短路径上,则输出该边。
解决方法:
- 找出从所有节点到节点 1 的最短路径的长度。将它们存储在数组 A 中。
- 找出所有节点到节点 N 的最短路径长度,将它们存储在数组 B 中。
- 设节点 1 和 N 之间的最短路径距离为 minD。
- 取一个与给定图的边对应的布尔数组 E,用所有 FALSE 值初始化它。
- 对于每条边 ij(对应于数组 E 的索引 k),请执行以下操作:
- 如果 A[i] + 边缘权重 ij + B[j] = minD 或 A[j] + 边缘权重 ij + B[i] = minD,则标记 E[k]=TRUE。
- 输出数组 E。
我在 75 分钟内完成了所有问题,所有测试用例都通过了。
面试 1(DSA 回合)
日期 : 2020 年 12 月 21 日
平台:通过 Zoom 进行视频通话,在 https://coderpad.io/ 上实时编码
时长:1小时
面试官首先介绍了自己,并概述了他的团队所做的工作。登录认证相关的工作引起了我的兴趣,我也问了一些问题。在这之后,我被要求做自我介绍。他问了一些关于我参加的其中一场黑客马拉松的问题。
这花了大约 15 分钟。
然后我被要求为以下问题一一编写代码和时空复杂度。面试官为每个问题解释了一些示例,我们在编写代码后对一些测试用例进行了试运行。
问题 1
数组的交集
- 给定两个数组,找出它们中出现的元素。 (这里,重要的是问面试官我们应该如何处理重复元素)
- 如果数组已经排序,请提供优化的解决方案。
- 如果一个数组与另一个数组相比非常大,请给出优化的解决方案。 (我在更大的数组上使用了二分搜索,进行了适当的修改来处理重复的元素)
例子 :
输入: [1, 3, 3, 5] , [1, 3, 3, 3, 5, 5, 7, 8]
输出:[1, 3, 3, 5]
类似文章:https://www.geeksforgeeks.org/union-and-intersection-of-two-sorted-arrays-2/
问题2
连接组件的数量
给定一个字母矩阵,考虑所有 8 个邻居,找到连接组件的数量。
例子 :
输入 :
[“aabcc”,
“阿贝”,
“啊啊啊”]
输出:4
类似文章:https://www.geeksforgeeks.org/connected-components-in-an-undirected-graph/
整个编码部分快速轻松地完成。
还剩将近10分钟,所以我们讨论了LinkedIn的生活,我告诉他LinkedIn应用程序的一些我认为应该改进的功能。
面试 2 (Host-Manager Round)
日期 : 2021年1月8日
平台:通过Zoom进行视频通话
时长:1小时
这是一次行为面试。从我们两人的介绍开始,我们讨论了虚假内容检查(他在 LinkedIn 的团队正在完成的任务之一)。
然后我被要求描述一个我在简历中提到的项目。
在此之后,问了一些行为问题,例如:-
- 你对实习有什么期望?
- 说个情况
- 当你和你的队友遇到想法冲突时。
- 当你的想法被抛弃并且你不得不跟随团队的其他成员时。
- 当项目的结果不符合预期时。
- 当您在面临资源匮乏的情况下仍能取得成果时。
- 当你觉得自己缺乏某些技能时。
- 你在实习期间想做什么样的工作?
整个互动对我来说非常有趣,我真的必须从各种比赛和活动中分析我自己的很多经历。
最后他问我有没有什么问题要问他,在我提问之后,面试就结束了。
2 天后,我接到招聘人员的电话,关于我选择实习的事宜。
根据我的经验,最有用的资源:GeeksForGeeks、InterviewBit、CodeForces。