📜  Media.net 采访经历 |校外

📅  最后修改于: 2022-05-13 01:58:19.181000             🧑  作者: Mango

Media.net 采访经历 |校外

我最近在 Media.net 就 SDE 的角色进行了采访。由于是校外面试,整个面试过程都是在 Google Hangouts Chat 上进行的。通常的 Media.net FTE 招聘流程包括:1 轮编码,2 轮算法面试,最后一轮面试。所有回合都是淘汰赛。整个过程耗时2个月完成。

第 1 轮(编码):我跳过了编码轮。 Media.net 将一些参加过 ACM-ICPC 区域赛的候选人列入候选名单,对于这些候选人,他们会跳过编码环节。我是那些候选人之一。

第 2 轮(第一次算法面试 - 1 小时):在这一轮中提出了 1 个编程问题。

问题:给定一个大小为 N 的未排序数组,其中包含 N 个不同的整数。查找数组中可二进制搜索的元素的计数。二进制可搜索元素是您可以通过传统的二进制搜索算法(假设数组已排序)在给定数组中找到的元素。

例如:

N = 7

数组 = 1 5 3 2 6 7 4

二进制可搜索元素 = 0、3、4、5(0 索引数组)

答案 = 4

预期时间复杂度 – O(n)

第 3 轮(第 2 次算法面试 - 1 小时):这一轮也提出了 1 个编程问题。

问题:给定一个图,其中每个节点代表一个城市。一些城市通过双向道路相互连接。还给出了每条道路的长度。有些城市有旅馆。给定一个起始城市和一个目的地城市以及一个代表一个人在一天内可以旅行的最大距离的值 K,找出这个人可以到达他的目的地的最小天数(或判断是否不可能给定的 K)。 (注:如果一天的路程超过K,可以在有酒店的城市休息,如果该城市没有酒店,则意味着您必须选择另一条路。第二天,该人可以从那个城市开始,经过的距离重置为 0)。

第 4 轮(最终面试 - 1 小时):这一轮包括 1 个编程问题、os、dbms、网络问题和许多其他问题。

Q1 – 给定一个 0 和 1 的二维矩阵。找出矩阵中对应的行和列都包含全 0 的单元格的数量。

Ans – 我告诉了解决它的以下方法 – 对于每一行和每一列,查找它是否包含全零。将此信息分别存储在 2 个大小为 n 和 m 的布尔数组中。这一步需要 O(n*m) 的时间复杂度。然后对于每个单元格检查其对应的行和列是否包含全零。此步骤的时间复杂度 – O(n*m)。

面试官要求改进tc进行第二步。他希望它在 O(1) 中。经过一番讨论,我得到了解决方案,我们只需要返回包含全零的行数和列数的乘积。

Q2 – 用于实现 hashmap 的时间复杂度和数据结构。解决散列冲突的技术。假设您正在使用线性探测技术。你有大小为 10 的散列数组。散列函数是 - mod 10。按以下顺序存储数字 5 15 25 6.删除 5.现在你将如何以最小的时间复杂度找到值 15 的键?

Q3 – 为大型数据库创建索引的数据结构。 (Ans : B+ tree) 为什么使用 B+ tree?为什么不能使用 BST?为什么不能使用平衡BST?

Q4 – 什么是操作系统中的抖动?

Q5 – 什么是 OS 中的饥饿?如何预防? (Ans – Ageing) 什么是老化?

Q6 – 哪些调度方案会出现饥饿?哪些方案可以避免它?

Q7 – 什么是死锁?如何检测死锁?死锁的必要条件?

Q8 – 你知道哪些页面替换算法?什么是 LRU 页面替换算法?

Q9 – TCP 和 UDP 的区别?各应用。

Q10 – TCP 中如何进行拥塞控制?详细介绍 TCP 中 3 次握手中每个步骤的意义。

Q11 – OSI 网络模型中的层。

Q12 – 在文本编辑器中实现撤消和重做的数据结构。 (我回答说我们可以使用 2 个堆栈)。面试官对此很满意,但后来问你能告诉我除了 2 个堆栈之外的任何数据结构,我回答没有。

Q13 – 与简历中提到的 2-3 个项目相关的问题。

10天后通知结果。收到报价🙂

一些技巧 -

  1. 顺利完成你在简历中提到的所有项目。
  2. 彻底复习所有理论科目。
  3. 大声思考。面试官非常友好。他们将引导您找到解决方案。因此,无论您遇到什么问题,都要寻求提示。清楚地阐明问题陈述和约束。面试官可能不会含蓄地告诉他们,而是希望你问他们。