领扣LintCode算法问题答案-1068. 寻找数组的中心索引
发布日期:2021-06-30 17:09:43
浏览次数:3
分类:技术文章
本文共 1091 字,大约阅读时间需要 3 分钟。
领扣LintCode算法问题答案-1068. 寻找数组的中心索引
目录
1068. 寻找数组的中心索引
描述
给定一个整数数组nums,编写一个返回此数组的“中心索引”的方法。
我们将中心索引定义为:中心索引左边的数字之和等于中心索引右边的数字之和。
如果不存在这样的中心索引,我们应该返回-1。 如果有多个中心索引,则应返回最左侧的那个。
- nums的长度范围为[0, 10000].
- nums[i] 中每个元素都是[-1000, 1000]范围内的整数.
样例 1:
输入: nums = [1, 7, 3, 6, 5, 6]输出: 3解释: 索引3 (nums[3] = 6)左侧所有数之和等于右侧之和。并且3是满足条件的第一个索引。
样例 2:
输入: nums = [1, 2, 3]输出: -1解释: 并没有满足条件的中心索引。
题解
public class Solution { /** * @param nums: an array * @return: the "pivot" index of this array */ public int pivotIndex(int[] nums) { // Write your code here if (nums.length < 3) { return -1; } int index = nums.length - 1; int leftSum = 0; int rightSum = 0; for (int i = 0; i < index; i++) { leftSum += nums[i]; } while (index > 0 && leftSum != rightSum) { leftSum -= nums[index - 1]; rightSum += nums[index]; index--; } return leftSum == rightSum ? index : -1; }}
鸣谢
非常感谢你愿意花时间阅读本文章,本人水平有限,如果有什么说的不对的地方,请指正。
欢迎各位留言讨论,希望小伙伴们都能每天进步一点点。
转载地址:https://le-yi.blog.csdn.net/article/details/108809186 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
逛到本站,mark一下
[***.202.152.39]2024年04月11日 01时21分54秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
Packer 如何将 JSON 的配置升级为 HCL2
2019-04-30
Ubuntu 安装 NTP 服务
2019-04-30
NeoFetch - Linux 使用命令行查看系统信息
2019-04-30
Jenkins 控制台输出中的奇怪字符
2019-04-30
Linux添加系统调用
2019-04-30
ubuntu 18 CTF 环境搭建
2019-04-30
linux内存的寻址方式
2019-04-30
[off by null + tcache dup]lctf_easy_heap
2019-04-30
[pie+libc]national2021_pwny
2019-04-30
task_struct 结构分析
2019-04-30
Linux创建进程的源码分析
2019-04-30
ubunut16.04的pip3出现问题,重新安装pip3
2019-04-30
how2heap-double free
2019-04-30
how2heap-fastbin_dup_consolidate
2019-04-30
orw_shellcode_模板
2019-04-30
[fmt+shellcode]string
2019-04-30
fmt在bss段(neepusec_easy_format)
2019-04-30
[double free] 9447 CTF : Search Engine
2019-04-30