📜  Directi面试经验|套装14(校园)

📅  最后修改于: 2021-05-07 01:20:53             🧑  作者: Mango

Direct我来了我们校园的应用工程师,运营工程师和平台工程师的全职招聘。


第1轮

在线对Codechef的测试包含3个编码问题
1.在以数组表示的二叉树中找到任意两个叶节点之间的最大路径总和。
例子:
给定树– {1,2,3,4,5,6,7}
答案:(5 + 2 + 1 + 3 + 7)= 18
2.在网格中找到给定的单词。如果存在则返回true,否则返回false。
例子:
网格= {{a,b,c},{d,e,f},{g,h,i}};
找到的单词= {“ abc”,“ abeih”,“ efg”}
答案:正确,正确,错误
3.一些树相关的问题(难点一)

完成1个编码问题的人员将被选出下一轮。


第二回合

数据结构设计回合(36分钟)[Skype访谈]
访谈包含一个数据结构问题,即
设计一个将在O(1)中找到最小间隙的数据结构。
插入(x)– O(登录)
删除(x)– O(登录)
搜索(x)– O(登录)
mingap()– O(1)
注– mingap是结构中存在的两个元素之间的最小绝对差。
范例:{4,7,9,9,1,5,12,18}
mingap是1(5-4)
注–同一时间所有问题都相同


第三回合

算法设计回合(50分钟)[Skype访谈]
面试包含1个算法设计问题
给定n个不同重量的盒子和m个不同重量承载能力的机器。找到移动所有盒子所需的最短时间。每台机器需要1分钟才能携带一次。
由于失去联系,一段时间后,她再次致电给我,并更改了问题。
您在梯子上玩,有些动作,有些约束。您获得了一个int [] changeLevels,其第i个元素是相对于当前位置您将要更改的级别数,即您可以将changeLevels [i]向上移动或将changeLevels [i]向下移动任何一个。您还将获得beginLevel,这是您的
阶梯上的初始位置和maxLevel(阶梯的最高级别)。无论如何,执行时都不能超过maxLevel或低于0级(零)。返回执行所有changeLevels后可以达到的最大Level,即最终level。如果无法通过列表而不超过maxLevel或低于0,则返回1。
注–需要优化算法,而不是简单的递归解决方案。

没有人被选为运营工程师,但一些人被选为应用工程师的面试。即再次所有回合,除了编码回合。

Directi的所有练习题!

相关实践问题

单词花花公子