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

给定一个链表和一个值,返回一个新链表,使得所有小于该值的节点排在左边,所有大于或等于该值的节点排在右边,要求时间复杂度 O(n)、空间复杂度 O(1)。请手写代码实现。

招商银行·招银网络科技后端开发金融编码实现问题拆解技术原理

考察说明

考察链表操作、原地分割算法的实现能力与复杂度意识

回答思路

  1. 能正确划分小于与大于等于目标值的节点,且保持相对顺序
  2. 使用哑结点或指针管理新链表头尾,避免空指针和循环引用
  3. 保证时间复杂度 O(n)、空间复杂度 O(1),不新建节点
  4. 正确处理边界情况:空链表、所有节点均小于/大于等于目标值
本题已收录答题指导

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

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