这题核心就一句话:每个孩子至少 1 个糖果,且要同时满足“左约束”和“右约束”如果只从一个方向考虑,一定会漏掉另一边的约束。什么要两次遍历?假设数组: 1 2 3 2 1 如果你只从左往右: 1 2 3 1 1 ❌ 后面递减部分不满足规则。如果只从右往左: 1 1 3 2 1 ❌ 前面递增部分又错了。所以:左→右:解决“比左边高”右→左:解决“比右边高”两边都要满足。第一步:初始化每个人至少一个糖果 candies = [1,1,1,1,...] 第二步:从左往右如果: arr[i] > arr[i-1] 说明当前分数更高那当前糖果必须比左边多: candies[i] = candies...