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

给定一个包含红色、白色和蓝色三种颜色的数组,请编写代码将其原地排序,使得相同颜色的元素相邻,并按照红、白、蓝顺序排列。

华为HUAWEI后端开发电子/半导体编码实现性能优化问题拆解

考察说明

考察数组原地排序与双指针算法的实现能力

回答思路

  1. 能识别问题本质是三色分类(荷兰国旗问题)
  2. 能实现左右双指针和一个遍历指针的原地排序
  3. 能正确处理边界条件和交换逻辑
  4. 能分析时间复杂度为O(n)、空间复杂度为O(1)
本题已收录答题指导

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

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