首页 > 编程语言 > 详细

【数组】寻找数组的中心索引

时间:2020-05-20 12:46:20      阅读:49      评论:0      收藏:0      [点我收藏+]

题目:

技术分享图片

 

 

解答:

sumleft  + num[i] + sumright = totalsum

sumleft = sumright

===> 2 * sumleft = totalsum - num[i]

 1 class Solution {
 2 public:
 3     
 4     // sumleft + nums[i] + sumleft = totalsum 
 5     // 2 * sumleft = totalsum - nums[i] 
 6     int pivotIndex(vector<int>& nums) 
 7     {
 8         int leftsum = 0;
 9         int totalsum = 0;
10         
11         // 1. sum(nums)
12         for (int i = 0; i < nums.size(); i++)
13         {
14             totalsum += nums[i];
15         }
16         
17         // 2. 2 *leftsum = totalsum - nums[i]
18         for (int i = 0; i < nums.size(); i++)
19         {
20             if (2 * leftsum == totalsum - nums[i])
21             {
22                 return i;
23             }
24             
25             leftsum += nums[i];
26         }
27 
28         return -1;
29 
30     }
31 };

 

【数组】寻找数组的中心索引

原文:https://www.cnblogs.com/ocpc/p/12922508.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!