后端岗位面试题更新 2026-08-05

请手写实现一个算法题:接雨水。给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。

华为HUAWEI字节跳动后端开发互联网/IT电子/半导体编码实现问题拆解技术原理

考察说明

考察算法理解、双指针或动态规划等解法以及编码实现能力

回答思路

  1. 正确理解题意,明确每个位置可接雨水量取决于左右最大高度中的较小值
  2. 能给出暴力解法并分析时间复杂度 O(n²)
  3. 能实现双指针优化解法,达到 O(n) 时间和 O(1) 空间
  4. 代码风格清晰,正确处理边界条件(如数组长度小于3)
本题已收录答题指导

本题附完整参考答案与评分标准

登录后可查看结构化答题指导;也可以直接开一场模拟面试,AI 面试官用本题实时追问并给出评分。