码迷,mamicode.com
首页 > 编程语言 > 详细

1068. 寻找数组的中心索引

时间:2020-04-06 15:50:09      阅读:81      评论:0      收藏:0      [点我收藏+]

标签:没有   中心   NPU   mod   checked   esc   cti   index   sel   

1068. 寻找数组的中心索引

中文English

给定一个整数数组nums,编写一个返回此数组的“中心索引”的方法。

我们将中心索引定义为:中心索引左边的数字之和等于中心索引右边的数字之和。

如果不存在这样的中心索引,我们应该返回-1。 如果有多个中心索引,则应返回最左侧的那个。

样例

样例1:

输入: 
nums = [1, 7, 3, 6, 5, 6]
输出: 3
解释: 
索引3 (nums[3] = 6)左侧所有数之和等于右侧之和。
并且3是满足条件的第一个索引。

样例2:

输入: 
nums = [1, 2, 3]
输出: -1
解释: 
并没有满足条件的中心索引。

注意事项

  • nums的长度范围为[0, 10000].
  • nums[i] 中每个元素都是[-1000, 1000]范围内的整数.
 
 
输入测试数据 (每行一个参数)如何理解测试数据?(双指针,不要多次求和,避免超过时间限制)
class Solution:
    """
    @param nums: an array
    @return: the "pivot" index of this array
    """
    ‘‘‘
    大致思路:
    1.给定初始值,left,right = 0,sum(nums),一次求和即可,不用多次求和。双指针的方法,left += nums[index],right -= nums[index]
    2.如果left == right ,则直接返回index,否则-1
    ‘‘‘
    def pivotIndex(self,nums):
        left,right = 0,sum(nums)
        for index in range(len(nums)):
            right -= nums[index] 
            if left == right:
                return index
            left += nums[index]
        return -1

 

1068. 寻找数组的中心索引

标签:没有   中心   NPU   mod   checked   esc   cti   index   sel   

原文地址:https://www.cnblogs.com/yunxintryyoubest/p/12642141.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!