LeetCode #724. Find Pivot Index
题目
解题方法
设置一个leftsum和一个rightsum,分别初始化为0和sum(nums),遍历数组,如果i不是0,则leftsum加上i-1位置的数,否则leftsum不动。然后再把rightsum减去i位置的数,比较leftsum和rightsum是否相等,如果相等返回i,循环结束返回-1。
时间复杂度:O(n)
空间复杂度:O(1)
代码
class Solution:
def pivotIndex(self, nums: List[int]) -> int:
leftsum = 0
rightsum = sum(nums)
for i in range(len(nums)):
if i:
leftsum += nums[i-1]
rightsum -= nums[i]
if leftsum == rightsum:
return i
return -1

浙公网安备 33010602011771号