Menu
CoddyTech

Find Pivot Index

简单前缀和python iconjava iconcpp iconc iconjs icon+10

给你一个整数数组 nums。中心索引是指左侧所有值的和等于右侧所有值的和的索引。中心索引处的值不属于任何一侧,没有值的一侧总和为 0。

返回最左侧的中心索引;如果没有中心索引,则返回 -1。

函数

pivotIndex(nums: integer-array) → integer
numsinteger-array
要平衡的整数数组
返回值integer
最左侧的枢轴索引;如果不存在,则为 -1

约束条件

  • 1 ≤ nums.length ≤ 104
  • -1000 ≤ nums[i] ≤ 1000

示例

输入
nums = [3, 1, 5, 2, 2]
输出
2
解释
在索引 2 处,左侧的和 3 + 1 = 4 与右侧的和 2 + 2 = 4 相等。索引 0 处左侧为 0,右侧为 10;索引 1 处左侧为 3,右侧为 9,因此 2 是最左边的支点。
challenge icon

进阶

你能否在每个值只读取一次的情况下找到最左侧的枢轴,而不先计算总和?这会占用多少内存?

重置代码
def pivotIndex(nums):
    # 在这里编写代码

测试 #1

测试 #2

测试 #3

参数

nums = [3, 1, 5, 2, 2]

预期输出

2