📜  Adobe 面试体验 | MTS-2(1.5 年经验)

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

Adobe 面试体验 | MTS-2(1.5 年经验)

第一轮:本轮在线测试时长为75分钟。我们收到了 22 个问题:

  • 15个能力逻辑推理题。
  • 5 个 C++ 问题。
  • 2个编码问题。
    1. 给定一个名字和选票列表……输出得票最多的获胜者。
    2. 考虑一个字符串,s = “abc”。一个按字母顺序排列的 s 子串序列将是 {“a”, “ab”, “abc”, “b”, “bc”, “c”}。如果我们将此序列简化为仅以元音开头并以辅音结尾的子串,则剩下{“ab”,“abc”}。此简化列表中按字母顺序排列的第一个元素是“ab”,按字母顺序排列的最后一个元素是“abc”。提醒一句:
      Vowels: a, e, i, o, and u.
      Consonants: b, c, d, f, g, h, j, k, l, m, n, p, q, r, s, t, v, w, x, y, and z.

    我被要求为每个问题编写代码。面试官空跑了每一个代码,并要求我优化解决方案。我被问及我给出的每个解决方案的空间复杂度和时间复杂度。

第 2 轮:

  • 数组中的 k 个最大(或最小)元素
  • 整数流中的中位数(运行整数)
  • 给定一个单词字典和两个单词 A 和 B,找到将 A 转换为 B 所需的最小路径。从 A 到 B 一次只能更改一个字符,并且由此形成的每个单词都必须是有效的字典单词。例子:
    If dictionary = {
    "cat", "rat", "hat", "sag", "bag", "bug", "dog", "hog", "hot", "dot",
    "rot", "lot", "log", "cry", "pry", "fry", "fat", "fog", "pot", "fat"
    }
    A = "cat",
    B = "dog",
    then shortest path from A to B should be printed as:
    cat->hat->hot->dot->dog

第三轮:这是一个技术轮。

  • 有 n 栋房子围成一圈,每栋房子都包含一些价值。一个小偷要偷这些房子的最大价值,但他不能在相邻的两个房子里偷,因为被盗房子的主人会告诉他的左右两个邻居。被盗的最大价值是多少?对于直线上的房子?
  • 给定所有会议的开始和结束时间,任务是找到办公室所需的最少会议室数量,以便没有会议等待。

第 4 轮:这是一个技术轮。

  • 动态实现一维数组
  • 使用单个指针动态实现二维数组
  • 使用双指针动态实现二维数组
  • 实施 memcpy
  • 实施 strcmp
  • 关于线程、锁、死锁、字节序的讨论
  • 以螺旋形式打印二维阵列

第 5 轮:这是技术轮。

  • 给定 N 个立方体(6 个面),立方体的每个面都写有一个字母。您必须找出是否可以用这些立方体形成给定的段落。
  • 当W可以被认为是M,N可以被认为是Z(镜像字母)时,你将如何修改上述问题的解决方案
  • 给定一条宽度为 w 长度为 l 的道路。路上有完美的圆形坑洼。您将获得每个坑洞的半径和中心。你需要弄清楚你是否可以过马路。

第 6 轮:这是技术轮(管理)

  • 设计电梯
  • 编写一个算法来为用户分配电梯。
  • 在给定的 100 字节内存中实现二叉搜索树。
  • 对于上述问题的解决方案,您将如何处理提供的内存区域中的内部碎片?删除节点后会出现内部碎片
  • 他给了我一个关于他的团队相关工作的案例研究,并要求我对其进行优化。

第 7 轮:这是技术轮(董事)

  • 它包含 2 个程序:程序 1:
    int *p;
    p = (int *)malloc(sizeof(int));
    printf("%x\n", p); // prints 0x12345
    *p = 1;
    wait(x);// Jump to program 2
    printf("%d\n, *p);

    方案二:

    int *p;
    p = 0x12345; // assigns the address stored in p of program 1
    *p = 2;
    printf("%d\n, *p);
    signal(x);

    程序 1 和 2 的 printf() 语句的输出是什么?为什么程序 2 会失败?

  • 讨论分页、逻辑地址、物理地址、抖动、物理地址计算等。
  • 在二维行和列排序数组中搜索、插入和删除

10天后,接到HR的电话,关于Selection。