Paytm 面试体验 – 校园
Paytm 访问了我们的校园,获得了软件工程师的职位。面试过程包括以下几轮。
在线回合:在线回合包括 3 个编程问题。测试是在 cocubes 上进行的。
- 给定两个字符串A 和 B,将一个字符串转换为另一个字符串。唯一允许的操作是将字符串A 中的任何字符放在字符串的开头。您必须输出最小编号。如果可能,需要执行的操作,否则打印“-1”。
https://www.geeksforgeeks.org/transform-one-string-to-another-using-minimum-number-of-given-operation/ - 给定一个数字范围 [L, R]。找出数字和为素数的数字的计数。
- 给定一个矩阵,表示哪个孩子喜欢哪个玩具。
matrix[i][j]=1 表示孩子 i 喜欢玩具 j。一个孩子只能得到 1 个玩具,一个玩具只能分配给 1 个孩子。找出能得到他们想要的玩具的最大儿童数。
38名学生入围面试。
Round 1 (Technical):面试问我以下几个问题,听了我的做法后,他让我为这些问题写代码。
- 找不到。数组中每个大小为 k 的窗口中的唯一元素。
https://www.geeksforgeeks.org/count-distinct-elements-in-every-window-of-size-k/ - 给定一棵二叉树,他让我按以下方式打印树的元素:-
从左到右打印树的前两层,从右到左打印接下来的两层,依此类推。
在回答完这两个问题后,他问了我一个设计问题,并深入讨论了处理这种情况的各种方法。
我入围了下一轮。
第 2 轮(技术):在这一轮中,我被问到有关核心操作系统、DBMS 以及数据结构的问题。面试官性格温和。他问我以下问题:
- 为汉诺塔问题编写程序。
https://www.geeksforgeeks.org/c-program-for-tower-of-hanoi/ - 使用队列实现堆栈。
https://www.geeksforgeeks.org/implement-stack-using-queue/
我首先给了他一个使用priority_queue的解决方案,他说他想使用一个简单的队列。 - 打印二叉树的底视图。
https://www.geeksforgeeks.org/bottom-view-binary-tree/
听完方法后,他让我为他提出的所有问题编写代码。 - 他向我询问了我在实习期间所做的工作,以及为什么我使用一些特定的Python模块来完成特定的任务。
- 然后他问我关于 DBMS 的 ACID 属性以及关于插入和删除异常的讨论。
- 他问我有关死锁、竞争条件、互斥锁的问题,并要求我编写代码来演示竞争条件是如何发生的以及如何处理它。
第 3 轮(技术):这一轮由 AVP-engineering 进行。他首先问了我关于 OOPS 的问题,然后给了我一个编程问题。
- 编写递归代码以螺旋顺序打印矩阵。
然后他让我为电影评论系统设计一个数据库,用户可以在其中评论、投票和回复电影评论,同时给出评分和评论。数据库的设计应使插入和删除异常最少。
然后他问我实习期间的工作情况。
HR Round: HR首先让我自我介绍。她问我为什么要加入 Paytm,并让我解释我的 B.tech 项目。然后她问了我很多行为问题。她向我介绍了 Paytm 的工作文化,最后,她问我是否有任何疑问。
判决 - 已选择。
我建议您与面试官讨论您的方法,因为他们基本上是在寻找您如何解决问题以及如何提出答案,即您在制定问题解决方案时的思考过程。