找回密码
 立即注册

QQ登录

只需一步,快速开始

热门经验分享: 护肤 减肥 化妆 美发 育儿 恋爱 理财 职场 旅行 运动 养生 购物 生活 运势 游戏 手机 电脑 小吃 美食 宠物 装修 西点
当前位置: 生活指南经验分享 > 母婴/教育 > 教育 > 力扣算法习题——有多少小于当前数字的数字

力扣算法习题——有多少小于当前数字的数字

时间:2018-7-27 02:28 点击:127次
题目简介:给你一个数组nums,对于其中每个元素nums,请你统计数组中比它小的所有数字的数目。换而言之,对于每个nums你必须计算出有效的j的数量,其中j满足j!=i且numsnums。以数组形式返回答案。 ...

题目简介:

给你一个数组nums,对于其中每个元素nums[i],请你统计数组中比它小的所有数字的数目。

换而言之,对于每个nums[i]你必须计算出有效的j的数量,其中j满足j!=i且nums[j]<nums[i]。

以数组形式返回答案。

示例1示:

示例2示:

示例3示:

提示示:

解题思路:

第一步先将所给数组按从小到大排序存入临时数组中。

6

在这步中需要注意的是:不能通过将原始数组直接赋值给临时数组,然后对临时调用sort方法。

7

原因:通过直接赋值后,两个变量所指向的内存地址相同,当对临时数组排序之后,原始数组中的数组中的数据同时被排序。示。

为了不影响原始数组中的数据,采用切片的方式赋值。经过切片后赋值的临时数组与原始数组不在指向同一个内存地址。示。

第二部查询原数组中的数在排序后数组中的索引值即为所求结果。

10

此外当原始数组中若存在相同的数时,可以利用index方法巧妙解决。

11

由于通过index方法返回的索引下标为第一此出现的位置,故不用考虑数组中有重复的数。示。

2

原始代码示。

3

为了优化程序的运行时间,故采用列表推导。优化后的代码示。

4

优化后的代码不仅更加简介,而且还提高了程序的运行速度。

15

提交记录比较,示:


https://www.izhinan.cn/article-38796-1.html以上内容就是关于【力扣算法习题——有多少小于当前数字的数字 】的指南经验分享;您也可以通过下方的评论互动,发表您的意见和观点,让更多人通过生活指南经验分享因之受益,让生活变得更简单。


鲜花

握手

雷人

路过

鸡蛋
经验内容仅供参考,如果您需解决具体问题(尤其法律、医学等领域),建议您详细咨询相关领域专业人士。
------分隔线----------------------------

最新评论

推荐内容