嗨,我将分享我对德勤 Hashedin 的采访经历。我收到了 HR 的面试流程邮件。
第一轮(技术面试轮):第一轮是基于数据结构和算法以及一些核心计算机科学问题。面试官很谦虚,很有礼貌。采访以一个简短的介绍开始。
问的问题是:
- 平衡括号的所有组合。我给了他这个问题的递归方法,但我遗漏了一些基本情况和一些角落情况,所以他给了我一些提示,然后我得到了遗漏的点并编写了代码。
- 找到最大数量为 1 的行。首先,我给了他带有两个嵌套 for 循环的 Brute force Approach,他告诉我优化该方法,然后我给了他 n*log(m) 时间复杂度的 Binary Search Approach,他不满意,之后我给了他O(n+m) 时间复杂度的两个指针方法,他对我的方法很满意。然后他让我写干净的代码。
- 一些时间复杂度问题。他给了我一些伪代码,让我找出时间复杂度。
- 基于 OOP 的问题。他问了我一些基于 OOP 的问题,比如 OOP 的概念、函数重载和函数覆盖等。
- SQL 查询。他问了我一些 SQL 查询,比如 Second Max Salary。
第二轮(技术面试轮):第二轮也是基于数据结构和算法以及一些核心计算机科学问题。他生性非常友好。我给了他我的介绍并从面试问题开始。
- 基于矩阵链乘法的基于故事的问题。他给了我一些基于故事的问题陈述,问我方法,然后让我编写代码。首先我想到了贪婪的方法,然后我点击了使用矩阵链乘法的动态规划的逻辑。我向他解释DP(MCM)的逻辑。
- 岛的最大面积为 0 和 1。他问了我这个问题,所以我给了他带有解释的 DFS 方法,他建议不要尝试直接跳到最佳解决方案。所以我犯了这个错误。我直接跳到了最优方法。
- 操作系统问题。他问了我一些操作系统问题。线程和进程的区别。
第 3 轮(行为轮):
- 详细介绍
- 关于大学项目的一些想法。
- 为什么是哈希丁?
- 他根据决策提出了一些问题。
- 他要求我继续深造,所以我告诉他我还没有考虑过。
- 5年后你在哪里看到自己?
- 爱好。
- 强与弱。
- 有什么问题要问我吗?
判决:选定
提示:
- 尝试与面试官讨论您的想法。
- 永远不要直接跳到最佳解决方案,首先使用蛮力方法,然后再寻找优化的方法。
- 在编写代码时尝试使用有意义的变量名称。
- 在面试前参加 GeeksforGeeks 面试体验。
- 永不放弃。