2026 高盛(Goldman Sachs)Coding Interview 真题分享|Design HashMap + 其他面试题完整解析

大家好,我是2026届的求职者,最近刚参加完高盛(Goldman Sachs)的 Coding Interview。这次面试主要考察真实编码能力和数据结构设计,我把遇到的真题和解法完整分享出来(包含完整题目描述、Python 代码和详细思路),希望帮到正在准备高盛的同学。

高盛 Coding Interview 通常以 LeetCode Medium 为主,偶尔会出现 Design 题或业务相关的场景题。面试官非常注重思路表达 + 边缘情况处理 + 代码可读性。

真题列表(2026版)

题目1:Transaction Segments(交易段计数)

题目核心:给定一个交易金额数组和整数 k,要求统计数组中连续正好 k 个元素严格递增的子段数量。

(这是一道典型的滑动窗口或简单遍历题,重点在边界处理和严格递增判断。)

题目2:Efficient Tasks(高效任务分配)

题目核心:将模块分配给 3 个服务器,在满足约束条件的前提下,求「所有分配方式中最小值的最大值」(即最大化最小值问题)。

这是一道经典的二分搜索 + 贪心或动态规划题,考察资源分配和优化思维。

题目3:Design HashMap(设计哈希表)

完整题目描述:

不使用任何内置哈希表库,设计一个 HashMap。

请实现 MyHashMap 类: MyHashMap() 初始化一个空的映射。

void put(int key, int value) 向 HashMap 插入一个 (key, value) 对。如果 key 已存在,则更新对应的值。

int get(int key) 返回指定 key 所映射的值;如果映射中不包含该 key,则返回 -1。

void remove(int key) 如果映射中存在该 key,则移除 key 及其对应的值。

解决思路:

使用链地址法(Chaining)处理哈希冲突。 创建一个固定大小的桶数组(bucket array)。

通过简单的模运算(key % bucket_count)计算索引。

每个桶用列表存储 (key, value) 对。

Python 完整代码:

Python

复制代码
class MyHashMap:

    def __init__(self):
        self.bucket_count = 10007          # 一个较大的质数,降低冲突概率
        self.hash_map = [[] for _ in range(self.bucket_count)]

    def _hash(self, key: int) -> int:
        return key % self.bucket_count

    def put(self, key: int, value: int) -> None:
        index = self._hash(key)
        for i, (k, v) in enumerate(self.hash_map[index]):
            if k == key:
                self.hash_map[index][i] = (key, value)   # 更新值
                return
        self.hash_map[index].append((key, value))        # 新增

    def get(self, key: int) -> int:
        index = self._hash(key)
        for k, v in self.hash_map[index]:
            if k == key:
                return v
        return -1

    def remove(self, key: int) -> None:
        index = self._hash(key)
        for i, (k, v) in enumerate(self.hash_map[index]):
            if k == key:
                del self.hash_map[index][i]
                return

解法解析: 哈希函数:key % 10007

冲突处理:链地址法(每个桶是一个列表)

put:先找桶,存在则更新,不存在则新增

get / remove:线性查找对应桶即可

这道题虽然是经典 Design 题,但高盛面试官常会追问负载因子、rehashing、时间复杂度等后续问题,建议提前准备。

面试准备建议 高频考点:Array / String、DP、Greedy、Design、Sliding Window、HashMap 相关。

面试技巧:一定要边写边讲思路,先说清楚边缘情况(key为负数、0、冲突多等)。

平台:多数情况在 HackerRank / CoderPad 上进行,熟悉线上编码环境很重要。

如果大家也遇到了高盛的 OA 或 VO,欢迎在评论区分享更多真题~

ProgramHelp OA代写服务(友情分享)

如果时间紧张或 proctored 环境不方便,想确保所有测试用例 100% 通过,可以参考 ProgramHelp 的专业 OA 代写服务。他们专注 HackerRank、CodeSignal 等大厂笔试,通过远程无痕操作,不通过不收费,安全可靠,很多冲高盛的同学都反馈帮助很大。

祝大家高盛面试顺利,早日拿 Offer!

相关推荐
sheeta19981 天前
LeetCode 补拙笔记 日期:2026.06.07 题目:1. 两数之和
笔记·算法·leetcode
柒和远方1 天前
LeetCode 452. 用最少数量的箭引爆气球 —— 区间贪心经典:排序 + 扫描一箭穿心
javascript·python·算法
Zhang~Ling1 天前
C++ 红黑树封装:myset和mymap的底层实现
开发语言·数据结构·c++·算法
ECT-OS-JiuHuaShan1 天前
什么是对和错?——“有针对性定义域的逻辑值的真伪”:认识论终极追问的公理化裁决
数据库·人工智能·算法·机器学习·数学建模
Merlyn101 天前
【栈】155. 最小栈
python·算法
一个不知名程序员www1 天前
算法学习入门---算法题DAY5
c++·算法
San813_LDD1 天前
[量化]《虚函数调用时间复杂度完全解析:为什么是 O(1) 以及它的真实代价》
java·数据结构·算法
MartinYeung51 天前
[论文学习]利用索引梯度优化基于优化的 LLM 越狱攻击:MAGIC 方法的深度分析与实现
人工智能·学习·算法
数据仓库搬砖人1 天前
特征选择三剑客:前向、后向、全子集,哪种更适合你?
算法
起个破名想半天了1 天前
算法与数据结构之Floyd算法
数据结构·算法