2年以上Arcesium面试经验 有经验
黑客回合测试:
- 将字符串S 中的字符c1 替换为 c2 并将 c2 替换为 c1。但有人提到字符串会很大并且需要高效。大多数测试用例的暴力解决方案都超时。
- 给定一个像 '01001010' 这样的字符串,使所有字符交替所需的最小修改次数(0 到 1 或 1 到 0)。
- 一些数学相关的问题,不清楚。
他们呼吁对海得拉巴校区进行面对面的面对面采访。
第1轮:
- Java中的多态性。编写编译和运行时多态的示例
- 列表和数组列表的区别。她正在寻找一个答案,即 Arraylist 与普通列表不同,它是作为动态数组实现的
- Java中的字符串可变性
- 一些与Java中对象和数组的内存分配有关的问题。
- 子类和超类对象互相调用方法。
- 从列标题中查找 Excel 列号。
在给出解决方案后,她询问这是否适用于像 2**n 和 all 这样的大列名称。然后我将代码中的结果变量更改为 Long 而不是 int .. 以处理其大数据。她期待更多的优化......然后我告诉我们,我们可以进行模式匹配并存储相应的值以使用它们。她问我会使用哪种数据结构。我告诉我会使用 trie。
第 2 轮:这是一个以设计为导向的轮次。
- 使用惰性实现编写单例模式。然后要求使其成为线程安全并进一步改进它。
- 关于暴露剩余资源和身份验证的几个问题。
- 目前公司使用的数据结构和设计模式。
- 如果您想在代码中每次发生异常时发送邮件,您将如何做?
- 编写基本的 try-catch 实现
- 实现创建表的Java方法和更多步骤。如果在建表后的其他步骤中出现异常,您将如何处理?
- A类里面有B类。 B类中有A类。这是一个循环依赖,你目前的框架将如何处理这个?
- 在我们的代码中使用可序列化
第三轮:
- 关于现在的公司和团队
- 在给定大小的组中反转链接列表
- 在我的简历中,由于查询优化而被问到有关数据库的问题。
- 不同类型的索引以及它们如何工作和实现等
- b树和b+树的区别
- 什么是联接以及它们如何工作