深圳洲聚网站建设,网站怎么找回密码,服装网站首页设计,绿色食品网站模板.htm给你一个整数数组 nums #xff0c;请计算数组的 中心下标 。
数组 中心下标 是数组的一个下标#xff0c;其左侧所有元素相加的和等于右侧所有元素相加的和。
如果中心下标位于数组最左端#xff0c;那么左侧数之和视为 0 #xff0c;因为在下标的左侧不存在元素。这一点…给你一个整数数组 nums 请计算数组的 中心下标 。
数组 中心下标 是数组的一个下标其左侧所有元素相加的和等于右侧所有元素相加的和。
如果中心下标位于数组最左端那么左侧数之和视为 0 因为在下标的左侧不存在元素。这一点对于中心下标位于数组最右端同样适用。
如果数组有多个中心下标应该返回 最靠近左边 的那一个。如果数组不存在中心下标返回 -1 。
示例1 输入nums [1, 7, 3, 6, 5, 6] 输出3 解释 中心下标是 3 。 左侧数之和 sum nums[0] nums[1] nums[2] 1 7 3 11 右侧数之和 sum nums[4] nums[5] 5 6 11 二者相等。
示例2 输入nums [1, 2, 3] 输出-1 解释 数组中不存在满足此条件的中心下标。
示例3 输入nums [2, 1, -1] 输出0 解释 中心下标是 0 。 左侧数之和 sum 0 下标 0 左侧不存在元素 右侧数之和 sum nums[1] nums[2] 1 -1 0 。
python代码
class Solution(object):def pivotIndex(self, nums)::type nums: List[int]:rtype: intsum_nums sum(nums)prefix_nums 0for index, num in enumerate(nums):if prefix_nums * 2 sum_nums - num:return indexprefix_nums numsreturn -1go代码
func pivotIndex(nums []int) int {sumNums : 0for _, v : range nums{sumNums v}prefixNum : 0for index, num : range nums{if prefixNum * 2 sumNums - num{return index}prefixNum num} return -1
}