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

给定一个不含有重复值的数组 arr,对于每个位置 i,找到左边最近且值比 arr[i] 小的位置,以及右边最近且值比 arr[i] 小的位置。请设计算法并实现。

文远知行后端开发人工智能编码实现问题拆解技术原理

考察说明

考察单调栈的应用、边界处理和算法复杂度分析

回答思路

  1. 能明确描述问题:左右两侧各自找最近的小值位置
  2. 能设计单调栈解法并解释栈内元素单调性
  3. 能正确处理无更小值的位置(返回 -1 或空)
  4. 能分析时间复杂度 O(n) 和空间复杂度 O(n)
本题已收录答题指导

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

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