📜  Sprinklr 面试经历 | (在校实习)

📅  最后修改于: 2021-11-10 06:51:13             🧑  作者: Mango

第一回合 :

这是在 HackerEarth 上进行的在线编码测试。由 3 个编码问题组成的测试。

  • 给定一个 NxM 维度的整数矩阵 (m)。在一次移动中,您可以从位置 (i,j) 到八位 (i+m[i][j] , j) 或 (i,j+m[i] [j])。最初,您在 (1,1) 处,您想到达 (N, M)。因此,您必须打印达到 (N, M) 的最小移动次数,如果不可能,则打印 -1。注意:您不能跳出矩阵。 (即在任何移动中 i+m[i][j] < N 或 j+m[i][j]75 分)

提示:使用 BFS 算法的源和目标之间的最小距离。

  • 有N个不同的包。第 i 个包裹是 X[i] 天,那个包裹的价格是 Y[i]。有 M 个客户。第 j 个客户想要至少 A[j] 天的包裹,并且他不想为任何包裹花费超过 B[j] 天。一个包裹最多可以容纳一个顾客,一个顾客最多可以购买一个包裹。你必须找到最大数量的包裹,你才能卖掉。 ( 100 分)
  • 给定两个二进制字符串A 和 B。在一次移动中,您可以从字符串A 中选择任意两个调整数,并用它们的 XOR 替换它们中的任何一个,用它们的 OR 替换另一个。例如:A=001 01 10. 你选择了 0 和 1 所以,0 XOR 1=1 和 0 OR 1=1 所以,01 变成 11。你可以在字符串A 上多次应用这个动作,并且可以使来自 A 的字符串B 然后返回 YES 否则返回 NO。 ( 50 分)

我的第一个和第三个被接受,第二个被部分纠正,我在第二个 100 中得到了 90。所以,我和其他 47 名学生一起进入了下一轮的候选名单。

第二回合(技术回合-面对面)|在线采访:

面试官人很好,环境很舒服。首先,他介绍了自己,还向我解释了他的工作和项目。然后他让我做自我介绍。然后他问了我一个编码问题。

  • 给定一个长度为 N 的数字字符串和一个整数 K。您必须从字符串删除 K 位数字,即剩余的字符串尽可能小。例如:给定字符串56138451 和 K=3 然后擦除 6(在第 2 个)、5(在第一个)、8(在  第五)。因此答案是 13451。

我的第一种方法是错误的,然后他让我接受不同的输入并找到输出,然后我使用了时间复杂度 O(K*N) 的蛮力方法。我们讨论了这种方法,他让我降低时间复杂度。我尝试了不同的方法,最后,我想出了一个 O(N) 方法。我们讨论了这种方法,然后他要求实施这种方法。

最后,他问我有没有什么问题要问他。

第三轮(技术轮-面对面)|在线采访:

面试官直接从编码问题开始。

  • 你有一个长度为 L 的空白空间。给定一个数组 W。W[i] 是第 i 棵树的宽度。 W1, W2 …… 都是不同的,你有很多这种宽度的树。你必须在长度为 L 的空间中种植一棵树,即没有剩余空间,换句话说,种植的树木宽度的总和是 L。这是 DP 的一个标准问题。请通过硬币找零DP问题。 (这是同一个问题。)这是该问题的链接:https://www.geeksforgeeks.org/coin-change-dp-7/

首先我告诉他这个问题同时具有DP的性质。 (重叠子问题和最优结构)然后我写了DP的数学方程,然后和他讨论这个方法。他让我实现这个,还让我画一张DP的表格。

  • 我们详细讨论了Hashmap,他让我写一个hashmap类。我使用模块化作为哈希函数实现了一个 Hashmap 类,并在类中编写了插入和查找方法。
  • 最后,他给了我一个情况,比如你必须根据面试次数优先考虑学生,他给出了(面试次数较少的学生先)。如果两个学生进行了相同数量的面试,那么在考试中得分较高的学生先进行,并且考试的分数是唯一的。然后问我应该使用什么数据结构以及如何解决这个问题。我告诉他我们可以使用 set>。但是他告诉我,如果在其他语言中不支持 set 那又如何呢?所以,我跟他解释了然后我们也可以在二叉搜索树和AVL树的基础上创建我们自己的数据结构,然后我们讨论二叉搜索树。

第四轮(技术轮-面对面)|在线采访:

这一轮有两个面试官。他问了我以下问题,

  • https://www.geeksforgeeks.org/detect-loop-in-a-linked-list/(首先我问他是否可以更改节点的值,但他告诉我假设链接列表是不可变的所以,我讨论和实施了弗洛伊德循环检测算法。)
  • https://www.geeksforgeeks.org/write-c-code-to-determine-if-two-trees-are-identical/
  • https://www.geeksforgeeks.org/check-if-a-binary-tree-is-subtree-of-another-binary-tree/

问题陈述:给定我的位置并给定一个包含 N 个不同司机位置的数组。那么,我怎样才能找到最近的司机位置呢?我告诉他们使用 set> ,第一个参数是第 i 个驱动程序与我的距离,第二个参数是驱动程序的索引 I。并讨论插入和擦除函数的时间复杂度这个问题的解决方案的集合和算法。

问题陈述:有一栋 N 层的建筑物,该建筑物中有两部电梯,我必须为这两部电梯设计一个省时的算法。他说对此没有最佳解决方案,只是想知道您可以想到多少种不同的场景。

最后,他看到了我的简历,问了我项目中的一个问题。然后他问我是否对他们中的任何人有任何疑问。

最后一轮 (HR) |在线采访:

这是一个非常有趣的回合,非常寒冷。她问了非常典型的HR问题,比如为什么要加入sprinklr?,介绍你自己。然后从我的简历中问了一些问题。

最后,她问我有没有什么问题要问她。向面试官提问是一个好兆头,因为这表明你对公司感兴趣。

最终裁决:已选择