📜  Adobe面试体验|设置36(校外驱动器)

📅  最后修改于: 2021-04-26 09:00:42             🧑  作者: Mango

在线笔试:
关于能力和编程的多项选择题2个编码题。

F2F R1
1)给出任意长度的字符串。打印字符串长度k的所有可能组合
提示使用递归

2)给定矩阵,以螺旋顺序打印。

3)验证给定的树是否是BST。
已经按照方法3 https://www.geeksforgeeks.org/a-program-to-check-if-a-binary-tree-is-bst-or-not/解决了
然后,他本人从同一个链接上口头介绍了方法1,并要求我为其编写代码,并弄清楚该方法出了什么问题。

F2F R2
1)给定一个节点使得

Node x {
   boolean ifFile;
   int[] children;    
} 

必须打印从根目录到文件的所有路径。如果没有文件,则不打印任何内容。
注意:这不是树或图。
结构就像Windows文件系统一样,层次结构可以很长。因此递归将导致堆栈溢出。无需递归即可解决

2)给定一个排序数组,其中一个数字具有任意数量的重复项
例如[1,2,3,4,4,4,5,6]
查找第一次出现重复元素的索引。
因此,对于上面的示例,您的函数应返回3。
提示:使用二进制搜索

3)到达终点的最小跳数
给定一个整数数组,其中每个元素代表可以从该元素进行的最大步数。
编写一个函数以返回到达数组末尾的最小跳转数(从第一个元素开始)。
如果元素为0,则无法在该元素中移动。
例子:
输入:arr [] = {1、3、5、8、9、2、6、7、6、8、9}
输出:3(1-> 3-> 8-> 9)

F2F R3
讨论了简历和所从事的项目。
1)给定一个二进制流,说明该数字在任何时间点是否可被3整除
讨论了2-3种方法。
2)讨论了实现字典的各种方法。
3)给定打印所有可能的子集。

F2F R4(定向回合,最后一回合)
讨论我的工作项目和大学项目。
讨论了阵列旋转问题的各种方法和复杂性。

Adobe的所有练习题!

相关实践问题

最小跳数