思杰研发面试经历
第 1 轮:在线测试(2 小时)
这一轮由 43 个问题组成,分为 2 个编码问题,41 个是关于操作系统、网络、数据结构、能力倾向、定量等 CS 核心主题的 MCQ。
编码问题1:给定一个数字作为字符串,可以形成多少个素数。
例如:I/p:357
开/p : 4
{3}、{5}、{7}、{37}
编码问题2:在二进制矩阵中,找到矩阵中每个0最接近的1,并输出最接近1的矩阵。
https://www.geeksforgeeks.org/nearest-1-0-binary-matrix/
本次测试是在hackerrank平台上进行的。
在这一轮之后,40 名学生从 450 名学生中入围。
第 2 轮:技术轮(30 分钟)
- 告诉我一些你的事吧。
- 函数重载和函数重载有什么区别
- 继承、这个指针和其他各种棘手的 OOPS 相关问题。
- 虚拟课程
- 给定一个二维矩阵,将元素替换为其 4 个相邻元素的总和。
- 在一维数组中查找元素的出现。
- 讨论我的项目。
第三轮:技术轮(50-55分钟)
- 自我介绍
- 树与图的区别
- 树中 BFS 和 DFS 之间的区别。
- 实施 BFS。
- 通过根据自己的意愿修改输出来实现带和不带递归的 DFS,并进一步增加问题的难度。
- 在无向图中检测循环。
- 问我在上一轮中是如何实现 Occurences 问题的,我使用 Hashing 实现了这个问题。
- 什么是哈希,它是如何存储在内存中的,为什么在哈希表中搜索是常数时间。
- C ++中的内存结构。
- 什么是哈希冲突。用 3000 个球和 100 个桶的比喻来解释它。
- 在哈希中搜索的时间是如何计算的?
- 如何避免哈希表中的冲突?
- 什么是信号量?讨论了火车票预订系统如何使用信号量应用程序工作。
- 波阵问题。 https://www.geeksforgeeks.org/sort-array-wave-form-2/
- 问了一种交换两个数字的时髦方法。答:使用异或运算。
第 4 轮:技术管理轮(45 分钟)
- 函数重载和函数重载有什么区别。
- 查找未出现在一维数组中的元素。其余所有元素在数组中出现 2 次。
- 为什么选择思杰?
- 团队合作的重要性。
- 项目讨论。
- 数据结构我觉得最独特。我告诉他们 Trie 数据结构。
- 阵列中的领导者。 https://www.geeksforgeeks.org/leaders-in-an-array/
- 关于操作系统的一些问题。
感谢 GeeksForGeeks 帮助我准备面试。
最终3人入围P+I offer,6人实习。