在线编码测试(2小时):
基于数据结构和算法, JavaScript, c ++, Java, 时间复杂度分析的MCQ有15个。给出了3个编码问题。
1)你将得到一个包含小写字母的字符串。你必须找到所有字符都不同的子字符串数。
约束:1 <=字符串长度N <= 100000
预期复杂度:O(N)
2)给你一个数组。你必须从此数组中找到一个子集, 以使该子集的元素平均值小于或等于k。
约束:1 <=数组长度N <= 100000, 1 <= k <= 10 ^ 9。
预期复杂度:O(N logN)
3)你将得到一个具有m个双向边的n个节点的图形。每个边缘都有一些与之关联的值。顶点1是源顶点。你有K个通配符。在从顶点1到顶点i(2 <= i <= n)的路径中, 遍历时最多可以使用K个通配符。当你在边缘上使用通配符时, 可以在计算路径成本的总和中通过该边缘(即, 如果在边缘上使用通配符, 则该边缘的值将为0)。注意:从顶点1到顶点2最多可以使用K个通配符。现在, 从顶点1到顶点3可以最多使用K个通配符, 依此类推, 直到顶点n。即你可以在从源到目的地的每个路径中最多使用K个通配符。你必须在图中找到从节点1到所有其他节点的最小距离。
限制条件:1 <= n, m <= 500000, 1 <= K <= 15
预期的方法:DP在图形上具有最短路径算法。
第一回合(技术性):
1)绘制你的DBMS课程项目的关系架构。
2)编写一些与你的项目相关的查询。
3)什么是哈希?有什么不同的哈希方案?
4)什么是负载系数和哈希值?
5)快速排序的伪代码。
第二回合(技术性):
1)系统设计– TinyURL系统–两个函数– get()和set()。 Get()方法采用较短的URL并重定向到较长的主URL。 Set()方法使用较长的URL, 并提供较短的URL。 (有关如何在数据库中实现的所有信息–如何存储数据以使检索达到最佳状态。)
2)你将如何处理关键部分?系统崩溃时会发生什么?
3)系统设计– Mall系统(定义4-5功能。你可以为数据库创建哪些表以满足所有这些功能?如何有效地将数据存储在磁盘上– AVL树或B +树的概念)。
4)编写有关无向图中检测周期的代码。
第三轮(对某些学生而言是额外技术):
1)难题:两列火车以50 kmph和70 kmph的速度互相驶向。火车1上有一只蜜蜂。它以80时速的速度前往火车2。到达2号列车后, 它立即以相同的速度再次回到1号列车。这样做直到火车相撞为止。你必须确定距离, 直到火车相撞。
2)难题:有25匹马。你必须进行最少的比赛才能确定前3名获胜者。
3)系统设计–停车场系统。有很多楼层。在每个楼层上, 都有许多排停车位。有3种类型的停车位-小, 中, 大。你可以停放自行车, 汽车或公共汽车。自行车可以停在任何类型的插槽上。汽车可以停在中型或大型插槽中。可以通过连续使用5个大号停车位来停车。根据OOP概念设计系统–制作类, 类图, 方法, 变量。
4)给定长度为L的管道(假设X –轴, 管道的开孔在坐标L处)。管道中各种x坐标上的液滴很多。每个液滴在正确的方向上都有一定的速度。当两个液滴相互碰撞时, 它们会合并并接受较小的速度。在L处, 将散出多少小滴?
5)你将获得一个链接列表。你必须找到循环的长度。
第四回合(人力资源回合):
1)你的爱好是什么?
2)你为自己感到骄傲的一件事是什么?
3)你对较早的面试有何感想?
4)你之前的面试中最具挑战性的部分是什么?
5)在你的生活中, 你觉得自己失败了吗?
6)除了sprinklr, 你梦想中的公司是什么?
7)你的弱点是什么?
最后, 共有8名学生被选中。