高盛面试经历 |设置 7
- 电话轮(第一轮)(经理):
- 在不使用第三个变量的情况下交换两个变量。
- 有一个数组,每个元素都重复两次,除了一个。找到那个元素。
- 实现 LRU 缓存
- 你将如何实现状态机
- 设计问题:您有一个包含数百万条记录的数据库,每个操作都需要访问该数据库。该数据库很少更新。并且有多个进程查询数据库并对值进行操作。你将如何设计这个?
- 怎么写回调函数?
- 第二轮(书面):
C++ OOPS、命名空间、继承、dynamic_cast、static_cast 15 qs(65 分钟)。难度级别高于平均水平。
用于实现容器类的 C++ 程序。struct StudentRecord { int id; string name; }
你必须实现算法: -
- 添加新记录。如果存在任何具有相同 id 的元素,则此操作将失败。
- 删除记录
- 编辑记录
- 查找记录
- 提供迭代器 begin() 和 end()
- 第三轮(F2F):
- 你有两个矩形的坐标。查找最少数量的比较,如果它们重叠与否。
- 编写代码来实现河内塔问题。您将使用哪些数据结构?您将如何实现移动函数(移动光盘)。
- 第四轮( F2F ):
- 讨论重要的 c++ 概念:虚函数、运行时多态性、静态多态性、函数重载、函数覆盖、C++ 中的强制转换类型、Static_cast、Dynamic_cast、new 和 malloc 之间的区别、复制构造函数、运算符重载、模板
- 字谜程序。不同的方法(散列,排序)
- 字符串中第一个非重复字符的代码
- n 叉树的最小公共祖先。
- 第五轮(英国视频会议(2人)):
- 关于我的项目
谜题:你有两个火车车厢,位于无限火车轨道上的不同点。车厢可以上下移动,而他们只能知道另一列火车是否从这一点开始。编写一个算法,使火车车厢相遇。相同的算法应该在两个车厢上运行。 - 虚函数、auto_ptrs、ordered_map、散列、链式、链表与数组、继承概念、静态函数、泛型编程、一些高级概念:CRTP(Curiously Recurring template problem)、运行时多态性
- 关于我的项目
- 第六轮(英国电话会议(2人)):
- 深入探讨我目前公司目前的项目
- 第七轮(与经理):
- 深入讨论我目前在公司中的角色,以及你在公司中的角色,关于团队,关于工作。我说我手头还有其他的offer,然后他说要评估每个offer的优缺点比较。随后,他深入探讨了当前的工作。
- 第 8轮(英国分部与 MD 通话):
- 深入探讨我目前公司目前的项目
- 第九轮(英国分部高级总监电话):
- 深入探讨我目前公司目前的项目
- 在不同情况下使用静态关键字
- 设计问题:您在客户端有一个套接字连接。并且该套接字连接每秒接收每只股票一百万个滴答声。假设你有 50 只股票。因此,每只股票的价值在一秒钟内变化 10,000 次。所以这需要在 GUI 中显示给客户端。并且还需要显示平均值、中位数、最高、最低。您将如何以最有效的方式进行设计
面试官非常nice。如果您遇到任何问题,他们会给出提示。如果您犯了任何错误,他们会提示您并告诉您纠正自己。
此外,只有所有参与的面试官都会给出积极的反馈,那么只有他们才会继续申请。因此,他们强调所有团队成员都会与受访者见面。
高盛的所有实践问题!