每日一题——LeetCode1365.有多少小于当前数字的数字

方法一 暴力循环

对于数组里的没一个元素都遍历一遍看有多少元素小于当前元素

javascript 复制代码
var smallerNumbersThanCurrent = function(nums) {
    let n = nums.length;
    let ret = [];
    for (let i = 0; i < n; ++i) {
        let count= 0;
        for (let j = 0; j < n; ++j) {
            if (nums[j] < nums[i]) {
                count++;
            }
        }
        ret[i] = count;
    }
    return ret;
};

消耗时间和内存情况:

方法二 排序

将数组排序,并记录每一个数在原数组中的位置。对于排序后的数组中的每一个数,我们找出其左侧第一个小于它的数,这样就能够知道数组中小于该数的数量。

javascript 复制代码
var smallerNumbersThanCurrent = function(nums) {
    var arr = Array.from(nums)
    arr = arr.sort((a,b)=>a-b)
    let index = 0,res = []
    for(let i = 0; i < nums.length; i++){
        index = arr.indexOf(nums[i])
        if(index>0){
            res[i]=index
        }else{
            res[i]=0
        }
    }
    return res
};

消耗时间和内存情况:

相关推荐
wuqingshun3141599 分钟前
蓝桥杯 缺页异常2【算法赛】
算法·职场和发展·蓝桥杯
扶苏100211 分钟前
前端js高频面试点汇总
开发语言·前端·javascript
Mh_ithrha15 分钟前
题目:小鱼比可爱(java)
java·开发语言·算法
l1t18 分钟前
数独优化求解C库tdoku-lib的使用
c语言·开发语言·python·算法·数独
有一个好名字19 分钟前
力扣-奇偶链表
算法·leetcode·链表
wxm63120 分钟前
力扣算法题(C++):1、2
java·算法·leetcode
im_AMBER26 分钟前
Leetcode 103 反转链表 II
数据结构·c++·笔记·学习·算法·leetcode
rgeshfgreh30 分钟前
回溯算法精解:排列、子集与组合
python·算法·深度优先
rit84324991 小时前
有限元算法求解铁木辛柯梁梁静力问题实例
算法
智驱力人工智能1 小时前
矿山皮带锚杆等异物识别 从事故预防到智慧矿山的工程实践 锚杆检测 矿山皮带铁丝异物AI预警系统 工厂皮带木桩异物实时预警技术
人工智能·算法·安全·yolo·目标检测·计算机视觉·边缘计算