Accolite 面试经历 |设置 18(校内)
回合:
1. 能力回合
2.技术回合M1
3.技术回合M2
4.技术回合M3
5. 人力资源回合
- Aptitude Round:有 20 个 MCQ,时间限制为 30 分钟。正确答案的评分为+1,错误尝试的评分为-2.5。这些问题包含来自 Quants/Logical Reasoning 的 2-3 个问题。 2 个来自 OS,2 个来自 Networking,其余来自编程(主要是 DS)在 600 名学生中只有 23 人通过了这一轮。
- 第一次技术面试。在面试之前,所有 23 名学生都被召集到会议室,并展示了关于公司以及他们提供的邮件和包裹的演示文稿。来面试了。我的面试时间最长。将近1小时40分钟。问题:
- 你会得到一个包含负数和正数的未排序数字的数组。找出总和 = 0 的对。如果不存在这样的对,则找到总和最接近 0 的对。我先正常解决了问题(复杂度为 n^2),然后更有效地解决了问题(复杂度 n log n)。但他正在寻找具有线性复杂性的解决方案。 (无法以线性复杂度解决)
- 然后,他修改了问题,并使其找到具有最大可能正积的元素对。这很容易,我在 O(n) 复杂性中做到了。首先,他怀疑我的方法并试运行了整个程序。但它工作得很好。
- 下一个问题:给你一个字符串数组,你需要找出最长的链,使得链的第 k 个元素的最后一个字符和第 k+1 个元素的第一个字符相同。同样,最后一个元素的最后一个字符应该等于第一个元素的第一个字符。他告诉我只解释我的方法,不要写整个代码,因为问题很困难。我无法有效地回答这个问题。我使用递归方法来解决问题,但这意味着最坏情况的复杂性是指数 n 形式。
- 下一个问题:给定一个正整数数组,你如何将它分成两个数组,使得两个数组中的元素之和相同。我最初解决了这个问题,首先对数组进行排序,然后从最大的元素一阶添加元素,只添加可能添加的元素。在这一点上,他交叉质问了我,在这次采访中几乎持续了超过 1 小时 30 分钟,我的大脑不再起作用,我改变了程序的某些部分,这破坏了目的。此外,他希望我在不对数组进行排序的情况下解决它。当他亲自要求我出去等待结果时,我几乎已经放弃了。
他首先保留了我的简历,这让我想我可能已经成功了,因为他们正在归还没有被选中的学生的简历。但后来他打电话给某人,让他把我的简历还给我。从 23 人中,只有 4 人被选中进入下一轮,不幸的是我没有成功。 (即使每轮只选了一个人,他也必须经过剩下的几轮。也就是说,公司甚至可能拒绝那1个候选人,然后空手而归)但是面试是一次很好的经历,公司很少有这样的采访。尽管没有被选中,但我的体验非常好。此外,我仍在寻找第三个问题的答案,如果有人可以用线性复杂性方法解决最后一个问题,请发表评论。
Accolite 的所有练习题!