315. Count of Smaller Numbers After Self 计算右侧小于当前元素的个数
Title
给定一个整数数组 nums,按要求返回一个新数组 counts。数组 counts 有该性质: counts[i] 的值是 nums[i] 右侧小于 nums[i] 的元素的数量。
示例:
输入: [5,2,6,1]
输出: [2,1,1,0]
解释:
5 的右侧有 2 个更小的元素 (2 和 1).
2 的右侧仅有 1 个更小的元素 (1).
6 的右侧有 1 个更小的元素 (1).
1 的右侧有 0 个更小的元素.
二分插入排序
把输入数组反过来插入一个有序数组(降序)中,插入的位置就是在原数组中位于它右侧的元素的个数。
初始状态:
原数组为:[5,2,6,1]
排序数组:[]
结果数组:[]
第一轮:
原数组为:[5,2,6]
排序数组:[1]
插入的下标为 0,记入结果数组:[0]
第二轮:
原数组为:[5,2]
排序数组:[1,6]
插入的下标为 1,记入结果数组:[0,1]
第三轮:
原数组为:[5]
排序数组:[1,2,6]
插入的下标为 1,记入结果数组:[0,1,1]
第四轮:
原数组为:[]
排序数组:[1,2,5,6]
插入的下标为 2,记入结果数组:[0,1,1,2]
Code
class Solution:def countSmaller(self, nums: List[int]) -> List[int]:res, sortns = [], []for i in reversed(nums):idx = bisect.bisect_left(sortns, i)res.append(idx)sortns.insert(idx,i)return res[::-1]
315. Count of Smaller Numbers After Self 计算右侧小于当前元素的个数相关推荐
- LeetCode 315. 计算右侧小于当前元素的个数(Count of Smaller Numbers After Self)
题目描述: 给定一个整数数组 nums,按要求返回一个新数组 counts.数组 counts 有该性质: counts[i] 的值是 nums[i] 右侧小于 nums[i] 的元素的数量. 示例 ...
- 315. 计算右侧小于当前元素的个数
315. 计算右侧小于当前元素的个数 给定一个整数数组 nums,按要求返回一个新数组 counts.数组 counts 有该性质: counts[i] 的值是 nums[i] 右侧小于 nums[i ...
- leetcode315. 计算右侧小于当前元素的个数(树状数组解法)
leetcode315. 计算右侧小于当前元素的个数(树状数组解法) 题目:给定一个整数数组 nums,按要求返回一个新数组 counts.数组 counts 有该性质: counts[i] 的值是 ...
- 当前元素_leetcode315. 计算右侧小于当前元素的个数
leetcode315. 计算右侧小于当前元素的个数 给定一个整数数组 nums,按要求返回一个新数组 counts.数组 counts 有该性质: counts[i] 的值是 nums[i] 右侧小 ...
- LeetCode 315. 计算右侧小于当前元素的个数(二叉查找树二分查找归并排序逆序数总结)
文章目录 1. 题目 2. 解题 2.1 二叉查找树 2.2 二分插入 2.3 归并排序 1. 题目 给定一个整数数组 nums,按要求返回一个新数组 counts.数组 counts 有该性质: c ...
- [Leetcode][第315题][JAVA][计算右侧小于当前元素的个数][暴力][归并排序+索引数组]
[问题描述][中等] [解答思路] 1. 暴力 (超时) 时间复杂度:O(N^2) 空间复杂度:O(1) public List<Integer> countSmaller(int[] n ...
- 力扣——315. 计算右侧小于当前元素的个数
目录 问题描述 问题分析 问题描述 问题分析 本题采用分治思想进行处理,单独处理较长数组算法复杂度过大,先拆分为短对象进行处理,最后将结果进行合并. 针对拆分出来的较短数组的处理: class Sol ...
- 求栈中元素个数算法_每日算法系列【LeetCode 315】计算右侧小于当前元素的个数...
题目描述 给定一个整数数组 nums ,按要求返回一个新数组 counts .数组 counts 有该性质: counts[i] 的值是 nums[i] 右侧小于 nums[i] 的元素的数量. 示例 ...
- 315. Count of Smaller Numbers After Self
文章目录 1 题目理解 2 暴力解法 3 分治法 1 题目理解 输入:int[] nums 输出:计数的数组int[] counts 规则:counts[i]表示nums中下标大于i,值小于nums[ ...
最新文章
- 卷进大厂系列之LeetCode刷题笔记:移除元素(简单)
- JavaScript学习笔记五:变量、作用域和内存问题
- Why I Love My Virtual PCs
- hdfs源码分析第一弹
- Go 定时器内部实现原理剖析
- php过滤提交数据 防止sql注入***(8)
- 【论文阅读】Graph Networks for Multiple Object Tracking
- 内部文件检索——公司经验管理系统的一种有效方法
- 【Linux】磁盘分区
- D3DXVec3TransformCoord 函数
- android系统证书管理,抓包Android 7.0+将ca证书导入到系统(设置为系统证书)
- ROBOGUIDE软件:FANUC机器人弧焊焊接起始点接触寻位虚拟仿真
- x,y,w,h与xmin,ymin,xmax,ymax的关系
- Unity2D入门(二):图层layer和角色建立
- Newtonsoft.Json.JsonSerializationException
- 美国国土安全部试图商业化的八种网络安全新技术
- 童年汇老师教你如何给宝宝选玩具
- docker学习——杂记
- 用PDF格式协议的方式给PDF文档添加透明文字水印
- Vue01 | el-autocomplete远程搜索下拉框并实现自动填充
热门文章
- 虚拟机安装CentOS,网络配置
- muse ui tabs背景颜色字体颜色
- CSS样式表——超链接样式
- vim 代码注释插件
- 敏捷开发用户故事系列之二:如何面向客户价值编写故事
- 提示JS错误:WebForm_PostBackOptions 未定义
- python数据库模糊查询_原创:Python编写通讯录,支持模糊查询,利用数据库存储...
- 7-27 御膳房 (5 分)
- 实验7.2 二维数组 7-8 螺旋方阵
- 隐私设置错误您的连接不是私密连接_用小米手机的,赶紧将这些保护个人隐私的功能设置起来,安全好用...