leetcode笔记删除排序数组(leetcode排序中查找元素)

技术leetcode如何寻找数组的中心索引小编给大家分享一下leetcode如何寻找数组的中心索引,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧

边肖将与您分享leetcode如何找到数组的中心索引。相信大部分人还不太了解,所以分享这篇文章给大家参考。希望你看完这篇文章会有很多收获。我们一起来看看吧!

一、议题内容

给定一个整数类型的数组nums,请编写一个能够返回数组 “中心索引” 的方法。

我们是这样定义数组 中心索引 的:数组中心索引的左侧所有元素相加的和等于右侧所有元素相加的和。

如果数组不存在中心索引,那么我们应该返回 -1。如果数组有多个中心索引,那么我们应该返回最靠近左边的那一个。

示例 1:

输入:

nums=[1,7,3,6,5,6]

产出:3

解释:

索引3 (nums[3]=6)的左数之和(1 7 3=11)等于右数之和(5 6=11)。

同时,3也是第一个符合要求的中心指标。

示例 2:

输入:

nums=[1,2,3]

输出:-1

解释:

数组中没有满足此条件的中心索引。

说明:

nums的长度范围是[0,10000]。

任何nums[i]都将是[-1000,1000]范围内的整数。

二、解题思路

先计算nums所有元素的和,然后从左到右计算左边的和,如果:

左边和 * 2+当前元素 = 所有元素和

则返回当前元素索引,否则返回-1。

三、代码

分类解决方案:

defpivotIndex(self,nums:list)-int:

整和=和(nums)

left_sum=0

foriirange(len(nums)):

ifleft _ sum * 2 nums[I]==整数_sum:

返回

else:

left_sum=nums[i]

返回-1

if__name__=='__main__':

s=解决方案()

nums1=[1,7,3,6,5,6]

ans1=s.pivotIndex(nums1)

打印(ans1)

nums2=[1,2,3]

ans2=s.pivotIndex(nums2)

打印(ans2)

nums3=[-1,-1,-1,-1,-1,-1,-1]

ans3=s.pivotIndex(nums3)

打印(ans3)

nums4=[-1,-1,-1,-1,-1,0]

ans4=s.pivotIndex(nums4)

Print(ans4)这就是文章“leetcode如何找到数组的中心索引”的全部内容。感谢您的阅读!相信大家都有一定的了解,希望分享的内容对大家有所帮助。想了解更多知识,请关注行业资讯频道!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/146807.html

(0)

相关推荐

  • js中setInterval和setTimeout区别和用法

    技术js中setInterval和setTimeout区别和用法 js中setInterval和setTimeout区别和用法setTimeout
    setTimeout() //- 在指定时间后执行代码

    礼包 2021年11月14日
  • 如何选择合适的美国云服务器

    技术如何选择合适的美国云服务器在决定满足您需求的理想美国云服务器时,至少需要考虑五个因素。在所有这些因素上获得最高级别将确保您的网站能够提供出色的用户体验。这些因素是:速度 您的美国云服务器提供商的速度是您应该考虑的首要

    礼包 2021年11月26日
  • Hadoop基础知识有哪些

    技术Hadoop基础知识有哪些这篇文章主要为大家展示了“Hadoop基础知识有哪些”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Hadoop基础知识有哪些”这篇文章吧。Had

    攻略 2021年12月9日
  • MySQL数据库索引和事务的作用是什么

    技术MySQL数据库索引和事务的作用是什么本篇内容主要讲解“MySQL数据库索引和事务的作用是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“MySQL数据库索引和事务的作

    攻略 2021年12月8日
  • html css js是什么

    技术html css js是什么本篇内容主要讲解“html css js是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“html css js是什么”吧!最准确的网页设计

    攻略 2021年12月10日
  • 如何深入理解Java虚拟机JVM类加载初始化

    技术如何深入理解Java虚拟机JVM类加载初始化如何深入理解Java虚拟机JVM类加载初始化,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。1

    2021年11月21日