leetcode 1365. 有多少小于当前数字的数字(排序)
给你一个数组 nums,对于其中每个元素 nums[i],请你统计数组中比它小的所有数字的数目。
换而言之,对于每个 nums[i] 你必须计算出有效的 j 的数量,其中 j 满足 j != i 且 nums[j] < nums[i] 。
以数组形式返回答案。
示例 1:
输入:nums = [8,1,2,2,3]
输出:[4,0,1,1,3]
解释:
对于 nums[0]=8 存在四个比它小的数字:(1,2,2 和 3)。
对于 nums[1]=1 不存在比它小的数字。
对于 nums[2]=2 存在一个比它小的数字:(1)。
对于 nums[3]=2 存在一个比它小的数字:(1)。
对于 nums[4]=3 存在三个比它小的数字:(1,2 和 2)。
代码
class Solution {public int[] smallerNumbersThanCurrent(int[] nums) {int[] res=new int[nums.length];int[][] loc=new int[nums.length][2];for(int i=0;i<nums.length;i++)//构造二维数组记录排序前数组的下标{loc[i][0]=nums[i];loc[i][1]=i;}Arrays.sort(loc,((o1, o2) -> o1[0]-o2[0]));//按大小排序res[loc[0][1]]=0;for(int i=1;i<nums.length;i++){if(loc[i][0]==loc[i-1][0])//两个元素大小相等,结果也是一样的res[loc[i][1]]=res[loc[i-1][1]];else res[loc[i][1]]=i;//排序后的元素下标就是小于该元素的数字个数}return res;}
}
leetcode 1365. 有多少小于当前数字的数字(排序)相关推荐
- 1365. 有多少小于当前数字的数字
2020-03-17 1.题目描述 有多少小于当前数字的数字 2.题解 直接进行搜索即可 3.代码 #include <iostream> #include <vector> ...
- 1365. 有多少小于当前数字的数字(哈希表)
给你一个数组 nums,对于其中每个元素 nums[i],请你统计数组中比它小的所有数字的数目. 换而言之,对于每个 nums[i] 你必须计算出有效的 j 的数量,其中 j 满足 j != i 且 ...
- leetcode:前 K 个高频元素、删除字符串中的所有相邻重复项、有多少小于当前数字的数字、有效的山脉数组、独一无二的出现次数(JavaScript)
文章目录 347. 前 K 个高频元素 思路 1047. 删除字符串中的所有相邻重复项 思路 1365. 有多少小于当前数字的数字 思路 优化 继续优化 完整代码 941. 有效的山脉数组 思路 12 ...
- 【Leetcode1365】有多少小于当前数字的数字:详解
[Leetcode1365] 有多少小于当前数字的数字 1. 题目 给你一个数组 nums,对于其中每个元素 nums[i],请你统计数组中比它小的所有数字的数目. 换而言之,对于每个 nums[i] ...
- 力扣 有多少小于当前数字的数字
力扣 有多少小于当前数字的数字 题目描述 给你一个数组 nums,对于其中每个元素 nums[i],请你统计数组中比它小的所有数字的数目. 换而言之,对于每个 nums[i] 你必须计算出有效的 j ...
- 【LeetCode】﹝数学规律ி﹞第N位数字、可怜的小猪
[LeetCode]﹝数学规律ி﹞第N位数字.可怜的小猪 文章目录 [LeetCode]﹝数学规律ி﹞第N位数字.可怜的小猪 乐团站位★ 罗马数字转整数★ 整数转罗马数字★★ 第 N 位数字★★ 数字 ...
- LeetCode 260. 只出现一次的数字 III(位运算)
1. 题目 给定一个整数数组 nums,其中恰好有两个元素只出现一次,其余所有元素均出现两次. 找出只出现一次的那两个元素. 示例 :输入: [1,2,1,3,2,5] 输出: [3,5] 注意: 结 ...
- 【LeetCode】剑指 Offer 46. 把数字翻译成字符串
[LeetCode]剑指 Offer 46. 把数字翻译成字符串 文章目录 [LeetCode]剑指 Offer 46. 把数字翻译成字符串 package offer;public class So ...
- 【LeetCode】剑指 Offer 53 - I. 在排序数组中查找数字 I
[LeetCode]剑指 Offer 53 - I. 在排序数组中查找数字 I 文章目录 [LeetCode]剑指 Offer 53 - I. 在排序数组中查找数字 I 一.二分法 总结 一.二分法 ...
最新文章
- Linux中mmap与munmap函数系统调用
- 将有序数组转换为二叉搜索树Python解法
- 【EOJ Monthly 2019.02 - E】中位数(二分 ,中位数 ,−1/1变换,dp求解DAG最长路)
- 嵌入式软件工程师笔试题
- Azure SQL Database (1) 用户手册
- 【docker系列】docker基本常用命令
- C罗捧得史上首个区块链得分王奖杯 1600名支付宝用户获“同款”
- PenMount Touch显示鼠标指针驱动安装
- Hp Dell服务器硬件监控
- bug6-ResourceExhaustedError: OOM when allocating tensor with shape[512,15,15,128]
- 将新项目上传到svn
- ASP.NET MVC Flash 在线拍照
- 学习网络技术的一些常用论坛和网站
- cannot retry due to redirection, in streaming mode
- 东软始业教育2021(注意看得分88分)
- java销毁servlet_销毁servlet
- 2021软科计算机科学与技术,2021软科排名,NTU 十学科跻身世界前十!
- 为什么电脑唯独搜不到自己家wifi?
- iSkysoft PDF Editor 6 pro安装
- 翼辉操作系统 linux,2K龙芯派翼辉SylixOS操作系统使用手册.PDF