Databricks 面试经验分享:Revenue System API 设计 | 数据砖面经 系统设计 面试技巧
想要了解更多或获取我们的服务,欢迎添加微信 leetcode-king
Databricks 面试经验分享:Revenue System API 设计 | 数据砖面经 系统设计 面试技巧
面试经历分享
在最近的 Databricks 面试中,我遇到了一个关于设计 Revenue System API 的挑战。这次面试主要是店面阶段,考察了我对 API 设计的理解和算法实现能力。面试的题目主要集中在如何设计一个支持三种操作的 revenue system API。
面试题目描述
题目要求:
插入操作:
insert(revenue)
:这个操作要求返回一个自增的 customer ID。带推荐人的插入操作:
insert(revenue, referrer)
:与第一个操作不同的是,这个新的 customer 是由一个 referrer 推荐的。获取前 k 个收入最高的客户:
get_top_k_revenue(k, min_revenue)
:这个操作需要返回收入最高的 k 个客户的 ID 集合,但每个客户的收入必须大于或等于指定的min_revenue
。每个客户的收入是其自身收入和其直接推荐的客户的收入总和。
面试过程
在面试过程中,我与面试官快速讨论了最简单的基于 map 和扫描的解决方案,然而,面试官并没有让我继续深入编写该方案的代码。相反,面试官更感兴趣的是我如何利用二分搜索来优化这一操作,因此我继续编写了基于二分搜索的解决方案。
目前还在等待面试结果,不知道是否有利口的原题可以参考。如果有知道的朋友,可以在评论区回复分享。
总结与建议
在 Databricks 的面试中,系统设计和算法优化是关键考察点。通过我们的面试技巧培训和系统设计辅导,您可以在短时间内掌握应对类似问题的方法,并自信应对面试中的挑战。
希望这篇面经能为您提供帮助,祝您成功拿下 Databricks 的 Offer!