Adobe 面试体验 |第 19 套(适用于 MTS)
写轮回:
每次都做同样的测试。
- 第一轮:
- 他让我用 C 编写 hello world 的代码。然后他问这个 printf 存储在哪里以及编译器如何知道在哪里检查那个东西。如果将 printf 声明移到程序中,它将被执行。我告诉他我不知道这些事情。
- 在不使用额外空间的情况下连接同一级别的节点。
- 为一家拥有多台自动取款机的银行设计一个交易系统。他问我如果你想和银行打交道,你将如何向他们解释型号以及所有的软件和硬件要求。他想要一个多线程的客户端-服务器交互模型和数据库需求。
- 第二轮:
- 反转一个字符串。逐字反转段落。
- 顺序和级别顺序遍历和队列操作的复杂性。
- 为什么使用继承。什么是虚拟内存和抖动?
- 第三轮:
- 在堆栈中实现推送弹出操作。使用堆栈实现队列。记住还有进一步的优化,他要求我这样做。
- 解释虚拟内存以及如何完成映射。
- 解释多线程以及线程如何存储和访问全局、静态等变量。
- 写出青蛙跳 1 或 2 步可以到达第 n 步的方式的完整代码。
- 第四轮:
- 用段落中的另一个字符串替换一个字符串。您将使用哪种数据结构。完整的代码。
- 有红色、蓝色和绿色的球。你将如何对它们进行排序。
- 实现通用交换函数。我写了一个交换指针的函数,但他希望我交换完整的内存块而不仅仅是指针。
- 他间接地要求我实现 memcpy函数。
- 第五轮:
- 在 C 中动态实现一个连续的二维矩阵。
- 矩阵的螺旋顺序遍历。完整的代码,他运行了一个 4×4 矩阵。
- 计算第 n项的斐波那契。他要求优化传统解决方案。
- 第六轮:导演轮
- 编写一个函数,传递 2 时返回 1,传递 1 时返回 2。
- 数组(1 到 n)中缺少 1 个数字。发现
他只想要 n 项的总和减去数组解的总和。
现在将上述两个问题联系起来。 - 他问我下班后我在家里做什么。
我告诉他我阅读新闻、quora 和一些文章。所以他问我是否继续更新新闻,然后问我一些问题,比如强生选举结果、一些州的 CM 和最新的 android 版本。 - 如果我拥有一切,我会怎么做。
为什么不继续深造。
- 第七轮:人力资源
- 说说你自己。当前的 CTC 和通知期。
我建议通过指针以及事情如何从头开始实际工作,就像他们会要求您实现任何通用库内置函数一样。另请阅读操作系统和 oops 概念。如果您不知道任何主题,只需告诉他们。
Adobe的所有练习题!