(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
}
相关推荐
C++ 老炮儿的技术栈2 分钟前
VS2015 + Qt 实现图形化Hello World(详细步骤)
c语言·开发语言·c++·windows·qt
YuTaoShao2 分钟前
【LeetCode 每日一题】3634. 使数组平衡的最少移除数目——(解法一)排序+滑动窗口
算法·leetcode·排序算法
Once_day10 分钟前
C++之《Effective C++》读书总结(4)
c语言·c++·effective c++
波波00710 分钟前
每日一题:.NET 的 GC是如何分代工作的?
算法·.net·gc
撩得Android一次心动12 分钟前
Android LiveData 全面解析:使用Java构建响应式UI【源码篇】
android·java·android jetpack·livedata
柯一梦13 分钟前
STL2---深入探索vector的实现
c++
HY小宝F14 分钟前
职场沟通的深层智慧:从对抗到协作的自我修炼
职场和发展
组合缺一16 分钟前
Solon AI (Java) v3.9 正式发布:全能 Skill 爆发,Agent 协作更专业!仍然支持 java8!
java·人工智能·ai·llm·agent·solon·mcp
风暴之零20 分钟前
变点检测算法PELT
算法
深鱼~20 分钟前
视觉算法性能翻倍:ops-cv经典算子的昇腾适配指南
算法·cann