1) 技术回合
- 向我解释任何一个项目/挑战/团队规模
- 你是如何解决项目中的并发问题的。
- 你使用了哪些设计模式?
- 设计 LRU 缓存
- 在内存缓存中相互同步的方法
- 通过扩展 HashMap 编写自定义 putIfAbsent。还处理并发/正确性
2) 技术回合
- 更快搜索字符串的最佳数据结构——Trie
- 通过给出一些其他的 DS – 三元搜索树来优化 trie 的大小
- Trie 与三元搜索树的复杂性
- 范围查询——段树
- 检查 Tree 是否可折叠
- 你曾经在任何搜索引擎上工作过吗?
3) 技术回合
- 项目讨论
- 使用serialversion UID
- 编写hashmap实现
- 给定一组数字。确定 2 个数字之间的最大差异,使得 arr[x]
x - 建议多线程可以访问公共代码段的设计
- 按垂直顺序打印二叉树
4) 招聘经理回合(视频通话 | BlueJeans)
- 对其中一个项目的详细讨论
- 你在项目中的角色
- 最后的代码审查建议
- 与整个项目的产品经理直接互动 ?
- sql中的两阶段锁定
- ActiveMQ 回滚策略
- 识别慢查询以及如何优化它们
- 代码审查中的冲突
Expedia 的所有练习题!