Leetcode-5846.周赛 找到数组的中间位置
题目
给你一个下标从 0 开始的整数数组 nums
,请你找到 最左边 的中间位置 middleIndex
(也就是所有可能中间位置下标最小的一个)。
中间位置 middleIndex
是满足 nums[0] + nums[1] + ... + nums[middleIndex-1] == nums[middleIndex+1] + nums[middleIndex+2] + ... + nums[nums.length-1]
的数组下标。
如果 middleIndex == 0
,左边部分的和定义为 0
。类似的,如果 middleIndex == nums.length - 1
,右边部分的和定义为 0
。
请你返回满足上述条件 最左边 的 middleIndex
,如果不存在这样的中间位置,请你返回 -1
。
示例 1:
输入:nums = [2,3,-1,8,4] 输出:3 解释: 下标 3 之前的数字和为:2 + 3 + -1 = 4 下标 3 之后的数字和为:4 = 4
示例 2:
输入:nums = [1,-1,4] 输出:2 解释: 下标 2 之前的数字和为:1 + -1 = 0 下标 2 之后的数字和为:0
解题代码
class Solution {public int findMiddleIndex(int[] nums) {int n = nums.length;if (n==1){return 0;}int pre= 0;int after = 0;for (int i = 0;i<n;i++){after += nums[i];}for(int i = 0;i <n ;i++){after = after - nums[i];if (pre==after){return i;}else{pre = pre + nums[i];}}return -1;}
}
Leetcode-5846.周赛 找到数组的中间位置相关推荐
- LeetCode 1991. 找到数组的中间位置(前缀和)
文章目录 1. 题目 2. 解题 1. 题目 给你一个下标从 0 开始的整数数组 nums ,请你找到 最左边 的中间位置 middleIndex (也就是所有可能中间位置下标最小的一个). 中间位置 ...
- js数组查找最接近_在JavaScript数组中找到最小元素的位置
在JavaScript数组中找到最小元素的位置 注* 之前有篇文章介绍过数据遍历的性能比较: for in 比for loop慢至少20倍 ,这是另外一篇比较数组查找性能的例子,通过对手工/inde ...
- AcWing周赛 72 场 LeetCode单周赛 314 场 总结
一.LeetCode单周赛 314 场 1.6200.处理用时最长的那个任务的员工 (1)原题链接:力扣https://leetcode.cn/problems/the-employee-that-w ...
- leetcode练习一:数组(二分查找、双指针、滑动窗口)
文章目录 一. 数组理论基础 二. 二分查找 2.1 解题思路 2.2 练习题 2.2.1 二分查找(题704) 2.2.2 搜索插入位置(题35) 2.2.3 查找排序数组元素起止位置(题34) 2 ...
- LEETCODE | PYTHON | 724 | 寻找数组的中心下标
LEETCODE | PYTHON | 724 | 寻找数组的中心下标 1. 题目 给你一个整数数组 nums ,请计算数组的 中心下标 . 数组 中心下标 是数组的一个下标,其左侧所有元素相加的和等 ...
- 【前端js】实现剑指offer|leetcode(二)——数组题目集合
文章目录 一.数组去重 1. 对排序数组去重(leetcode 26. 删除排序数组中的重复项) 2. 检查是否存在重复元素(leetcode 217. 存在重复元素) 3. 检查相邻k个元素是否存在 ...
- 搜索长度未知的有序数组java_java二分法实现在有序的数组中定位某数在数组中的位置...
在一个有序的数组中,快速查找某值在有序数组中的位置,有人说这很容易啊,直接一个for循环遍历看看数组中哪个值与它相等,输出索引就ok了.这是个很直接的方法,但又没有想过但数组的长度很长时,你遍历一遍是 ...
- 每日一道 LeetCode (42):旋转数组
每天 3 分钟,走上算法的逆袭之路. 前文合集 每日一道 LeetCode 前文合集 代码仓库 GitHub: https://github.com/meteor1993/LeetCode Gitee ...
- numpy找到数组中符合条件的数
numpy找到数组中符合条件的数 import numpy as nparr = np.array([1, 1, 1, 134, 45, 3, 46, 45, 65, 3, 23424, 234, 1 ...
最新文章
- 服务器群安装系统,服务器安装总结
- 剑指offer:反转链表
- Globalplatform TEE api介绍
- CCNA第十一章学习笔记OSPF简介
- springboot:BeanPostProcessor示例及分析
- CoreAnimation编程指南(一)概念
- 万字详解Lambda、Stream和日期
- 判断活动窗口_蒙城活动推拉棚定做厂家
- 吴恩达《深度学习》第二门课(3)超参数调试、Batch正则化和程序框架
- vue引入萤石云监控进行播放
- 学云计算能从事哪些岗位 未来职业发展是什么样
- 如何辨别u盘是否为缩水,并恢复u盘真实容量
- bwa mem 报错处理:[mem_sam_pe] paired reads have different names
- php 有下划线的方法,编码风格 - PHP类方法中领先的下划线有什么用?
- runtime.getruntime.availableprocessors
- 第三方登录之微信登录
- voip是利用计算机网络,计算机三级网络技术VoIP概述
- 2019河南省第十二届ACM大学生程序设计竞赛参赛感
- 超级简单的视频调色教程分享
- Esper学习之五:EPL语法(一)
热门文章
- UNIX Domain Socket(UDS)是什么?同一台主机间进程间通信
- python中的sys.argv是什么?(控制台参数传递、控制台传参)
- pycharm新建文件夹时新建python package和新建directory有什么区别?
- Executors框架——5种常用的线程池介绍及区别
- SpringBoot v2.2.6版本遇到的坑 --- HiddenHttpMethodFilter组件的锅
- mysql8安装错误_Windows安装MySQL8.0.16 的步骤及出现错误问题解决方法
- 地磅称重软件源码_【漯河衡器】浅谈地磅称重的发展趋势
- springcloud ribbon 配置负载均衡策略以及自定义策略
- java中实现将十六进制按位取反
- 如何删除springboot中的子项目