📜  Adobe面试体验|套装40(MTS-1校园)

📅  最后修改于: 2021-04-29 17:49:48             🧑  作者: Mango

在线测试:
编码:时间:90分钟
存在三个编码问题,如下所示:

  1. 一个男人从他的房子开始,有几个煎饼。让他们成为N。现在他在回家之前先拜访了K个地方。他可以在每个地方买蛋糕,卖蛋糕或什么都不做。但是他必须在回家之前先卖掉L个蛋糕。找出在旅途中任何时候可以拿到的最大蛋糕数量。N,K,L作为输入
    例如:对于5 3 1,输出:7
  2. 我不记得确切的问题。您必须在数组中找到最大的连续子数组。基本上是关于Kadane算法的问题
    解决方案:GeeksforGeeks链接
  3. 有文字。有一个模式。该模式包含一个*符号,并且可以用0个或多个字母(任何字母)替换。例如,如果aa * b中的模式aaab,aab,aaccb等都是有效模式。您必须在文本中查找该模式的出现次数。

MCQ:50分钟
基于逻辑推理,数据解释和基础数学的问题共有45个。一个建议是,从头开始,它们比开始时容易得多。

选择了约16名学生进行面试。


第1轮

    面试官看了我的简历。然后直接移至数据结构和算法。
  1. 他问我有关排序算法的问题,然后又问我快速排序和合并排序有什么区别,什么时候使用什么?
    我告诉他合并排序是稳定的,快速排序的最坏情况复杂度为o(n ^ 2),但是在快速排序中,我们不需要合并排序后的数组。在数组的情况下,我们使用Quicksort,对于链表,我们使用合并排序
  2. 编写代码以合并包含浮点数的链表
    解决方案:GeeksforGeeks链接
  3. 然后,他通过交换节点中的数据向我介绍了链接列表中的冒泡排序,并问这里除了复杂性之外还有什么问题?
    我告诉我们,查找列表通常包含数据块,因此交换数据可能会导致相当大的开销并降低性能。他似乎对答案感到满意。
  4. CPU内部如何表示5.7之类的浮点数?
    我不得不说说IEEE符号。我不记得那些,所以无法回答。
  5. 关于操作系统,线程,进程,它们的区别,分页等的几个问题
  6. 您必须编写一个通用的Compare函数进行排序。例如,假设有一个学生类,其中包含科目X,Y,Z的标记。您必须编写一个比较函数,以便根据用户希望的任何字段进行排序。
    提示:使用函数指针
  7. 给了两个数字,您必须不使用*运算符就将它们相乘,并且还告诉您这样做所需的最小加法数.i给了一个also但不能说出所需的最小加法数。
    解决方案:GeeksforGeeks链接


第二回合

面试官再次看了看我的简历,并告诉我做了很多项目。但同样,我的项目没有任何问题。

  1. 设计用于存储任何类型数据的缓存。
    由于我们不知道要存储什么数据,因此我们必须返回void指针。现在首先我实现了一个数组。然后用于页面替换,我使用了LRU。为了跟踪最近最少使用的元素,我使用了一个堆。有人告诉我要进一步优化它。因此,首先将缓存表示为一个堆,然后最后进行双向链接列表,该列表具有存储在HashMap中的节点地址。还编写了用于设置和获取缓存以及替换功能的代码。
    面试官提供了很多帮助,并将我推向正确的解决方案
  2. 给出了AC代码,并要求我查找错误。这是一项艰难的工作,涉及到内存空间中的指针和字符对齐以及分段错误。
  3. 有关函数重载的几个问题
    解决方案:GeeksforGeeks链接
  4. 给出了火车的到达时间和出发时间,您必须找到火车所需的最少平台数目。
    解决方案:GeeksforGeeks链接


第三回合

在这一轮中,我的实习项目得到了详细讨论。然后提出以下问题:

  1. 当我们经常分配和取消分配内存时会发生什么?
    关于操作系统如何分配内存,碎片以及如何避免内存(压缩)进行了长时间的讨论。
  2. 压实如何工作?他正在要求算法
    告诉他,内存块可以用0(空闲)和1(占用)表示。紧缩将意味着最后移动所有0。我告诉他数组和链表的各自算法。
  3. 解除分配如何发生?在解除分配期间应注意哪些事项?
    我告诉他,我们可以不用再分配和取消分配内存了,而可以使用realloc()来重用它。关于realloc()有几个问题。
  4. 为什么大型数组的行主遍历比列主遍历更快?
    告诉他内部缓存可以带来的好处
  5. 您必须覆盖距离N。您可以采取1,2或3步。查找做s0的方法数量。
    提供递归和dp解决方案。
    解决方案:GeeksforGeeks链接


第四回合(最终人力资源回合)

  1. 这基本上是一次人力资源回合,还有诸如为什么要使用Adobe?
  2. 如果您找到另一份工作,您将如何决定接受哪一份?
  3. 您的位置偏好是什么?等被问到。
Adobe的所有练习题!