每日一题——LeetCode1200.最小绝对差

方法一 个人方法 排序+一次遍历:

最小差值一定是出现在大小相邻的两个元素之间,所以将数组从小到大排序

循环求两元素之间的差值,先假设当前差值为最小差值,先往res数组里面push数据,当碰到更小差值的时候,把res清空,重新往res里push差值为新的最小差值的元素对

javascript 复制代码
var minimumAbsDifference = function(arr) {
    arr.sort((a,b)=>a-b)
    let min=999,res=[]
    for(let i=0;i<arr.length;i++){
        if(arr[i+1]-arr[i]<min){
            min=arr[i+1]-arr[i]
            res=[]
            res.push([arr[i],arr[i+1]])
        }else if(arr[i+1]-arr[i]===min){
            res.push([arr[i],arr[i+1]])
        }
    }
   return res
};

消耗时间和内存情况:

相关推荐
Jerry1 小时前
LeetCode 1002. 查找共用字符
算法
无限的鲜花1 小时前
协程本质是函数加状态机——零基础深入浅出 C++20 协程
c++·算法·c++20
Hilaku1 小时前
为什么你的大文件断点续传,一遇到弱网就崩溃?
前端·javascript·程序员
旖-旎2 小时前
《LeetCode 64 最小路径和 || LeetCode 174 地下城游戏》
c++·算法·leetcode·动态规划
森林古猿12 小时前
再论斜率优化
c++·学习·算法
万法若空2 小时前
【数学-简单数论】同余中的逆
线性代数·算法
林恒smileZAZ2 小时前
`Array(100).map(() => 1)` 为什么全为空?
前端·javascript
凯瑟琳.奥古斯特3 小时前
力扣1009补码解法C++实现
开发语言·c++·算法·leetcode·职场和发展
KaMeidebaby3 小时前
卡梅德生物技术快报|蛋白的叠氮基修饰:实操解析:核酸模板耦合蛋白的叠氮基修饰实现靶蛋白定点共价标记
前端·人工智能·物联网·算法·百度
通信仿真爱好者4 小时前
第【60期】--大规模MIMO系统信号检测算法误码率比较 --matlab完整代码+参考文章
算法·matlab·mimo·信号检测