(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
}
相关推荐
迎風吹頭髮几秒前
UNIX下C语言编程与实践40-UNIX 全局跳转:setjmp 与 longjmp 函数的使用与注意事项
java·c语言·unix
春风霓裳6 分钟前
maven-setting配置
java·maven
小蒜学长7 分钟前
springboot二手儿童绘本交易系统设计与实现(代码+数据库+LW)
java·开发语言·spring boot·后端
龙木之森23 分钟前
纯 C++ 开发的 Telegram Bot 框架
c++·tui·telegram·bot
hqwest1 小时前
QT肝8天09--用户列表
开发语言·c++·qt·上位机·qt开发
_dindong1 小时前
动规:回文串问题
笔记·学习·算法·leetcode·动态规划·力扣
眠りたいです1 小时前
基于脚手架微服务的视频点播系统-脚手架开发部分-brpc中间件介绍与使用及二次封装
c++·微服务·中间件·rpc·架构·brpc
wangwangmoon_light1 小时前
0.0 编码基础模板
java·数据结构·算法
共享家95272 小时前
Leetcode刷题
算法·leetcode·职场和发展
simon_skywalker2 小时前
第7章 n步时序差分 n步时序差分预测
人工智能·算法·强化学习