📜  VMware 面试体验(2020 年校园内)

📅  最后修改于: 2021-11-17 10:06:26             🧑  作者: Mango

最近,VMware 访问了我们的学院 LNM 信息技术学院,担任全职和实习职位。整个过程在 Zoom 会议上是虚拟的。选拔过程共包括 5 轮。符合条件的分支机构为 CSE、CCE、ECE。

截止: 6.5 及以上,没有活动积压

第 1 轮(在线测试):它由来自 OS、DBMS、网络以及您最了解的两种编程语言中的任何一种的 MCQ 组成。有一个编码问题。编码问题很简单,它与求一个数的因数有关。

这一轮之后,从190名学生中选出了28名学生进行进一步的面试。

第二轮(技术面试1):面试官很酷,开始让我介绍自己。之后,他让我解释这些项目。对项目进行了简短的讨论。然后面试官问了我一些DSA问题:

  1. 提出的第一个问题是找到两个链表的交点。我向面试官解释了我的方法,但他没有要求我编写代码。
  2. 第二个问题是合并两个已排序的数组。首先我告诉他蛮力解决方案。但是我被要求提高时间复杂度并提供更好的方法。我用时间复杂度 O(N1+N2) 和空间复杂度 O(N1+N2) 回答。这个想法是使用合并排序的合并函数。我被要求编码这个问题。
  3. 在此之后,他概括了这个问题并告诉我合并 k 个排序数组。我给了他一个时间复杂度为 O(N * log K) 的解决方案,他印象深刻。这个想法是使用堆数据结构。现在讨论堆数据结构是如何工作的,以及如果在 CPP 中不允许使用 priority_queue,我将如何实现第二个问题。

然后我被问到一些与堆排序相关的时间复杂性,Heapify。

这一轮之后,20名学生被选中进行进一步的面试。

第三轮(技术面试2):面试官自我介绍,让我做自我介绍。直接从这里,她问了我 DSA 问题:

  1. 第一个问题是重新排列一个队列,就像我们得到 1, 2, 3, 4, 5, 6 一样,我们必须将它混合为 1, 4, 2, 5, 3, 6。我使用了额外的空间 O(N ),但她告诉我给出一个 O(1) 空间复杂度的解决方案。我无法说出优化的解决方案,然后她告诉我编写以前的方法。
  2. 第二个问题是从链表的末尾找到第 k 个节点。我用链表的长度给出了一个解决方案,但她告诉我只遍历链表一次。我被卡住了一会儿,但后来我给出了一个两分球的方法。我被要求对这种方法进行编码。
  3. 第三个问题是对链表进行排序。我告诉她归并排序方法。然后她让我解释归并排序。
  4. 第四个问题是从 2 个交替排序的链接列表中获得一个排序的链接列表,就像我们得到的一样:
    Head->2->1->4->3->6->5->NULL

    我们必须将链表重新排列为:

    Head->1->2->3->4->5->6->NULL

    我告诉她一种类似于使用两个指针合并两个已排序的链接数组的方法。她很感动。但我没有被要求编码。

在这一切之后,她让我解释我的一个项目。

九名学生被选中进行进一步的面试。

第 4 轮(管理轮):介绍之后,他开始向我询问 OS 的问题。问题来自内存管理和 CPU 调度。然后他开始问我来自 CN 的问题,比如:

  1. 路由器、交换机和集线器之间的区别。
  2. MAC地址是什么?
  3. 什么是 MAC 欺骗和 IP 欺骗?

然后他问了我一些 DSA 问题:

  1. 找到丢失的号码。
  2. 查找给定数组中的两个重复元素。
  3. 数组中的重复项。

在此之后,我被要求解释我的一个项目。然后他又问了我一些来自 OS 的问题。这次他深入研究了线程、信号量、互斥量和进程的概念。

三名学生被选中参加人力资源回合。

我希望我的经验会有所帮助。