题目描述

题目分析

今天这道题原本很简单,我都没打算写题解,当时用手机看的题目,我想着我三分钟应该能写出来,结果没想到wa了三发。。。
对待简单题不要轻视,对待难题不要畏难。
今天的主要问题是没有看数据范围,虽然只是一道很简单的题,但是自从刷力扣以来自己基本不怎么关注数据范围、边界条件,总是等报错以后才去看,这是一个很差劲的习惯,实际编程环境中是不会有现成的数据供测试的。
没有看到题目中数组可能为空,而没有想到中心索引可以是最左侧或者最右侧的。

AC代码

class Solution {public:int pivotIndex(vector<int>& nums) {int n = nums.size();if (n == 0) {return -1;}for (int i = 1; i < n; ++i) {nums[i] += nums[i-1];}if (nums[n-1] - nums[0] == 0) {return 0;}for (int i = 1; i < n-1; ++i) {if (nums[i-1] == nums[n-1] - nums[i]) {return i;}}if (nums[n-2] == 0) {return n-1;}return -1;}
};

官方题解

class Solution {public:int pivotIndex(vector<int> &nums) {int total = accumulate(nums.begin(), nums.end(), 0);int sum = 0;for (int i = 0; i < nums.size(); ++i) {if (2 * sum + nums[i] == total) {return i;}sum += nums[i];}return -1;}
};//作者:LeetCode-Solution
//链接:https://leetcode-cn.com/problems/find-pivot-index/solution/xun-zhao-shu-zu-de-zhong-xin-suo-yin-by-gzjle/
//来源:力扣(LeetCode)
//著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

感觉看官方的代码每次都收益颇多
首先,对中心索引的条件进行了转换,其次使用了accumulate函数进行求和
我的代码写出来感觉并不优美,那么多的特判。

每日一题:leetcode724.寻找数组的中心索引相关推荐

  1. python 寻找数组的中心索引_Leetcode724查找数组Python的中心索引,LeetCode724,寻找,python...

    寻找数组的中心索引 这一次打卡不知道又摸了多久的鱼,周五没做题,周日补上. 题目 给定一个整数类型的数组 nums,请编写一个能够返回数组"中心索引"的方法. 我们是这样定义数组中 ...

  2. python 寻找数组的中心索引_Leetcode724:寻找数组的中心索引(java、python3)

    寻找数组的中心索引 给定一个整数类型的数组 nums,请编写一个能够返回数组"中心索引"的方法. 我们是这样定义数组中心索引的:数组中心索引的左侧所有元素相加的和等于右侧所有元素相 ...

  3. 724. 寻找数组的中心索引

    链接:724. 寻找数组的中心索引 题解:https://leetcode-cn.com/problems/find-pivot-index/solution/xun-zhao-shu-zu-de-z ...

  4. LeetCode简单题之寻找数组的中心下标

    题目 给你一个整数数组 nums ,请计算数组的 中心下标 . 数组 中心下标 是数组的一个下标,其左侧所有元素相加的和等于右侧所有元素相加的和. 如果中心下标位于数组最左端,那么左侧数之和视为 0 ...

  5. leetcode 724. 寻找数组的中心索引

    给定一个整数类型的数组 nums,请编写一个能够返回数组 "中心索引" 的方法. 我们是这样定义数组 中心索引 的:数组中心索引的左侧所有元素相加的和等于右侧所有元素相加的和. 如 ...

  6. 力扣724.寻找数组的中心索引

    题目描述 给定一个整数类型的数组 nums,请编写一个能够返回数组 "中心索引" 的方法. 我们是这样定义数组 中心索引 的:数组中心索引的左侧所有元素相加的和等于右侧所有元素相加 ...

  7. LEETCODE | PYTHON | 724 | 寻找数组的中心下标

    LEETCODE | PYTHON | 724 | 寻找数组的中心下标 1. 题目 给你一个整数数组 nums ,请计算数组的 中心下标 . 数组 中心下标 是数组的一个下标,其左侧所有元素相加的和等 ...

  8. LeetCode774-寻找数组的中心索引

    1.思路:由于存在多个中心索引返回最靠近0号下标的index,所以从左往右遍历数组.中心索引的特点是左右元素相等,换言之,如果i为中心索引,则∑(0,1,2-i-) * 2 + nums[i] = n ...

  9. C#LeetCode刷题之#724-寻找数组的中心索引( Find Pivot Index)

    问题 该文章的最新版本已迁移至个人博客[比特飞],单击链接 https://www.byteflying.com/archives/3742 访问. 给定一个整数类型的数组 nums,请编写一个能够返 ...

最新文章

  1. angular 如何在index html 页面包含子页面_Webpack4.0各个击破(1)html篇
  2. 设置Kali Linux虚拟机连接网络
  3. 【机器学习】Logistic Regression 的前世今生(理论篇)
  4. 不定位成一个连接者,家装公司进军智能装饰的所有姿势都是错的
  5. 通俗易懂告诉你CPU/GPU是什么?
  6. Ubuntu 16.04 LTS 安装Mongodb 3.4
  7. 【Cesium】Cesium三维模型调整
  8. python人民币转大写_python实现人民币大写转换
  9. 在CAD里怎么测量面积?
  10. 考研英语二2017阅读理解Text3
  11. 在win10系统安装linux系统,win10系统安装Linux子系统的操作方法
  12. LightRoom预xmp文件如何导入设置?
  13. 游戏分类&&游戏开发常用术语
  14. Nexus Maven私服配置
  15. 旁路由Openwrt设置
  16. 常用JS图片滚动代码大全
  17. 中国象棋对弈系统java的程序包谁有?
  18. COM ATL IDispatchEx InvokeEx 钩子
  19. 绩优公司成主流 多家公司获政府补贴
  20. 【深度学习】深入探讨:残差网络解决了什么,为什么有效?

热门文章

  1. 二叉树和哈希表的优缺点对比与选择
  2. PHP中__get()和__set()的用法实例详
  3. 基于Bresenham和DDA算法画线段
  4. HadoopSourceAnalyse --- Nodemanager Container request handler
  5. C#中实现js中的eval函数功能
  6. 字体Times New Roman
  7. 乐刻运动 app android,乐刻运动
  8. 两个数相乘积一定比每个因数都大_小升初数学知识点大全含公式+20类必考应用题(含答案解析),孩子考试一定用得上!...
  9. java log.error_Logger.error打印错误异常的详细堆栈信息
  10. Nginx 实现网站 http、https 配置