Accolite 面试经历 |设置 20(校内)
Accolite 参观了我们的校园,担任软件工程师的职位。
第一天:
第一轮:在线测试
该测试由 20 个 MCQ 组成,测试持续时间为 30 分钟。该问题映射了来自数据结构、算法、操作系统、网络、DBMS、定量和 C++ 输出问题的概念。
标记方案:+1 表示正确,-0.25 表示错误
参加考试的学生人数:106
入围 : 39
提示:保持 CS 基础(数据结构、算法、操作系统、DBMS、网络)的核心概念绝对清晰,并对它们有深刻的理解。只有在您确定答案时才尝试。
第 2 天:
第 1 轮:书面(纸笔)编码测试(1 小时)
2个问题必须编码。将编写完整的代码。
1. 交换半字节:给定一个表示为字节(8 位)的十进制数,将最左边的 4 位(半字节)与最右边的 4 位交换。
例如 100 (01100100)
输出:70(01000110)
2. 最多两次购买和分享股票的最大利润
在每日股票交易中,买方在早上买入股票并在当天卖出。如果允许交易者一天最多进行 2 笔交易,则第二笔交易只能在第一笔交易完成后开始(卖出->买入->卖出->买入)。给定全天的股票价格,找出股票交易者可能获得的最大利润。
例如价格[] = {10, 22, 5, 75, 65, 80}
输出:87
价格[] = {90, 80, 70, 60, 50}
输出:0
参加考试的学生人数:39
入围:9
提示:通过所有测试用例的优化代码解决所有问题。这给人以积极的第一印象。至少有 1 个问题与动态规划有关。使用 DP 方法解决该问题是一种优势。
第 2 轮:技术第 1 轮(2 小时)
关于我简历中列出的一个项目的一点讨论
1. 给定一个 BST 和一个范围 (min-max) 删除树中所有不满足给定范围保持 BST 属性的节点。
给出 O(n) 方法并编写解决方案。
2.给定一个范围未知的大量正整数数组,任何元素都可以重复任意次数。找出重复次数最多的元素。如果不存在这样的元素或多个最大元素重复,则返回 -1。
提供就地(无哈希图或辅助计数数组)方法并编写解决方案。
3. 给定一个数字数组,找出配对的数量。
例如{1,2}
输出:2 [{1,2} , {(1,2)}]
例如{1,2,3}
输出:4 [{1,2,3} , {(1,2),3} , {(1,3),2} , {(2,3),1}]
一个数字不能出现在 2 对中。如果一个号码无法配对,则保持原样。
4. 给定一个数组,找出第二大的数。
给出 O(n) 时间复杂度和 O(1) 辅助空间方法。
5.算法方法
有五个盒子,编号为 1 到 5。有一只猫。每天晚上猫可以从一个盒子移动到另一个盒子,但是你在晚上睡觉所以你不知道猫在哪个盒子里。早上你必须告诉猫在哪个盒子里。
只有解决问题的方法是预期的。
6. 如何从元素的输入构建 AVL 树。
我这边的任何问题。问了2-3个问题。
本轮过后,有7人入围下一轮。
第三轮:技术第二轮(1.5 小时)
1. 如果您要维护使用左右旋转维护的 AVL 树平衡属性,您将如何在不使用旋转的情况下实现相同的功能。
2. 给定一个输入字符串,例如 aaaacacacaac 和一个模式 (a*c),其中 * 表示任意数量的任意字符在 O(n) 时间内打印给定字符串中的所有此类模式。
3. 使用带有类代码的示例解释面向对象的编程概念(继承、多态、抽象、封装、数据绑定、覆盖、重载)。
4. 给出了大量只有小写字母的流。查找并打印所有可能的有效英文单词。
5.识别给定的二叉树是否是二叉搜索树。https://www.geeksforgeeks.org/a-program-to-check-if-a-binary-tree-is-bst-or-not/
我这边的任何问题。问了2-3个问题。
本轮过后,有5人入选下一轮。
第 4 轮:技术第 3 轮(1.5 小时)
他们为其他4名候选人参加了这一轮比赛。在第二轮技术之后,我直接被称为 HR。
这一轮结束后,4人中有1人被选为HR。
第五轮:人力资源(10-15 分钟)
HR面试只选了2个人,我和第3轮技术选出来的。
1. 你今天过得怎么样……
2. 说说你自己……
3.家庭背景……
4.你为什么不想去MS...
5.你对Accolite了解多少……
HR说我被选中了,和我握手祝贺。这是我被 VJTI 录取后唯一等待的时刻 :)。
我这边的任何问题。再次问了2-3个问题,比如工作文化、层次结构、培训等。
我和我的朋友(来自 IT 的另一个人),我们都完成了面试过程并得到了邀请。