第一轮(数据结构和算法) 1) 给出了n级阶梯。找出达到终点的方法。我一次可以走一步或两步 . 2) 找出单词流中最大的k个数字。 无法编写第二个问题的运行程序。
第二轮(解决问题) 1) 从根到叶的每条路径加上一定数量,删除所有不满足此条件的节点。 2) 散列问题。在日志(n)时间内实现put(key,value)和get(key)。 假设有键和值对,比如 (1001, 233) (2001, 3340) (8776, 9) 必须使用函数执行get和put操作
hash(key) { return key%1000; }
还有你自己的散列操作。使用hashmap和指向avl树的指针完成。
divided the key with 1000. suppose 1001%1000 = 1; put 233 in 1st AVL tree, AVL tree will have structure like node { int index; int value; }
AVL将在索引的基础上构建。指数将为1001/1000; 例如,如果必须输入(3004996) 3004%1000 = 4; 然后使用hashmap转到第四个AVL树。现在计算3004/1000=3; 我的节点的索引为3,值为996。根据索引将此节点插入第四个AVL树。因此,时间复杂度将为log(n),其中n是密钥%1000 AVL树中的元素数。
第三轮(招聘经理轮) 1) 关于目前的公司,详细解释了一切。 2) 然后给你一个大文件,你必须找到所有的密码。让他把文件分成块进行并行处理。保持一个大小为26的数组,或者可以设置32位数字的位。设置数字位,以便轻松检查panagram状态。
第四轮(数据结构和算法) 1) 以二维矩阵的形式给出了不同城市的二维矩阵服务税。找到从一个城市到另一个城市的最低成本。你只能向右或向下两个方向旅行。 2) 找到距离给定节点n距离r处的所有节点。 3) 求从数字1到n的所有位的和 .
酒吧老板 1) 关于工作经验、项目和当前公司 2) 求和最大的最短子序列。
练习在纸上写代码,并处理角落案例。 你不会希望面试官在你的代码中发现错误。
如果你喜欢Geeksforgek,并想贡献自己的力量,你也可以写一篇文章,然后把你的文章发到contribute@geeksforgeeks.org.看到你的文章出现在Geeksforgeks主页上,并帮助其他极客。