📜  Adobe 面试经验(5 年以上经验)

📅  最后修改于: 2021-09-23 05:39:23             🧑  作者: Mango

地点:诺伊达

第 1 轮:询问当前的项目设计。详细解释。在那之后的几个 DS 和问题随之而来->

a)-> 实现LRU缓存技术(使用DLL解决)

b)-> 在即将到来的整数流中找到 k 个最小的数字(使用最大堆解决)

c)-> 检测链表中的循环。使用标准的龟毛算法解决了这个问题。他问了一个很好的变化,为什么你的快指针移动了两个而不是三个。这是一个很好的变化。我说不清楚。考虑一下?

第二轮第二轮包括 5 道 DS 编码问题。其中我正确解决了 3 个,其中一个部分解决了。

a)-> 给定一个由正值和负值组成的整数数组,找到包含最大和的连续子数组开始和结束索引。

b)-> 在运行的整数流中找到中值。 (我在这方面挣扎)

c)-> 打印树的级别顺序遍历,每个级别在新行中打印。

d)-> 给定一些字符串,找出字符出现的顺序 ->

e)-> 反转链表

例如。 {“极客”,“为”,“极客”}

出现顺序 -> g, e, k, s, f, o, r

第 3 轮:本轮包括 C++ 问题:

解释虚函数、解释 volatile 关键字、类的代码迭代器、代码单例类、继承类型、示例、解释复制构造函数、解释信号量、解释构造函数初始值设定项列表

第 4 轮:

a)-> 在 k 个元素的集合中反转链表

b)-> 您将整数存储在 1 GB 的磁盘空间中。并且您必须使用 100 MB 的 RAM 对其进行排序。你会怎么做?

第5轮:一些C++相关的问题,涉及进程内存区,静态变量,普通函数和虚函数的区别,

DS 问题:您有一组无限的整数,如何以最小的时空复杂度搜索其中的元素。

提示:二分查找