(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
}
相关推荐
virus59454 小时前
悟空CRM mybatis-3.5.3-mapper.dtd错误解决方案
java·开发语言·mybatis
一匹电信狗4 小时前
【LeetCode_547_990】并查集的应用——省份数量 + 等式方程的可满足性
c++·算法·leetcode·职场和发展·stl
鱼跃鹰飞4 小时前
Leetcode会员尊享100题:270.最接近的二叉树值
数据结构·算法·leetcode
Queenie_Charlie5 小时前
小陶的疑惑2
数据结构·c++·树状数组
没差c5 小时前
springboot集成flyway
java·spring boot·后端
时艰.5 小时前
Java 并发编程之 CAS 与 Atomic 原子操作类
java·开发语言
梵刹古音5 小时前
【C语言】 函数基础与定义
c语言·开发语言·算法
编程彩机5 小时前
互联网大厂Java面试:从Java SE到大数据场景的技术深度解析
java·大数据·spring boot·面试·spark·java se·互联网大厂
笨蛋不要掉眼泪5 小时前
Spring Boot集成LangChain4j:与大模型对话的极速入门
java·人工智能·后端·spring·langchain
筵陌6 小时前
算法:模拟
算法