(LeetCode 每日一题) 2016. 增量元素之间的最大差值 (数组)

题目:2016. 增量元素之间的最大差值


思路:维护已遍历过的最小值,时间复杂度0(n)。

C++版本:

cpp 复制代码
class Solution {
public:
    int maximumDifference(vector<int>& nums) {
        int mn=nums[0];
        int ans=0;
        for(int i=1;i<nums.size();i++){
            ans=max(ans,nums[i]-mn);
            mn=min(mn,nums[i]);
        }
        if(ans>0) return ans;
        return -1;
    }
};

JAVA版本:

java 复制代码
class Solution {
    public int maximumDifference(int[] nums) {
        int mn=nums[0];
        int ans=0;
        for(int i=1;i<nums.length;i++){
            ans=Math.max(ans,nums[i]-mn);
            mn=Math.min(mn,nums[i]);
        }
        if(ans>0) return ans;
        return -1;
    }
}

Go版本:

go 复制代码
func maximumDifference(nums []int) int {
    mn:=nums[0]
    ans:=0
    for i:=1;i<len(nums);i++ {
        ans=max(ans,nums[i]-mn)
        mn=min(mn,nums[i])
    }
    if ans>0 {
        return ans
    }
    return -1
}
相关推荐
程序员黑豆10 小时前
Java包装类:基本类型与对象的桥梁
java·前端·ai编程
致Great11 小时前
DeepSeek Harness插件开发实战教程:我让它自己写了一个 arXiv 搜索插件
算法
ShineWinsu12 小时前
对于C++:auto_ptr、unique_ptr、shared_ptr的模拟实现
c++·面试·笔试·智能指针·unique_ptr·shared_ptr·auto_ptr
mldong14 小时前
"applicant" 契约:退回发起人的闭环设计
java·架构
月华路14 小时前
G1 垃圾回收:脏卡队列、记忆集与并发精化线程机制
java·开发语言
XLYcmy14 小时前
京东 算法实习一面 下+手撕
c++·python·llm·概率论·数据处理·训练·codebert
gugucoding14 小时前
47. 【Java】Java内存模型(JMM)与可见性
java·开发语言
zww894911115 小时前
校园跑腿系统开发实战指南:从需求分析到上线部署全流程解析
java
反转180度15 小时前
Qt 6 + C++17 实现 SFTP 批量部署:工业设备运维工具实战解析
运维·c++·qt
Fluxart.ai15 小时前
电商商品图审核怎么自动化?规则引擎、人工复核与发布门禁
java·前端·自动化