(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
}
相关推荐
董董灿是个攻城狮6 小时前
AI视觉连载8:传统 CV 之边缘检测
算法
怒放吧德德7 小时前
Netty 4.2 入门指南:从概念到第一个程序
java·后端·netty
雨中飘荡的记忆9 小时前
大流量下库存扣减的数据库瓶颈:Redis分片缓存解决方案
java·redis·后端
阿里云云原生10 小时前
5 分钟零代码改造,让 Go 应用自动获得全链路可观测能力
云原生·go
心之语歌11 小时前
基于注解+拦截器的API动态路由实现方案
java·后端
blasit12 小时前
笔记:Qt C++建立子线程做一个socket TCP常连接通信
c++·qt·tcp/ip
华仔啊12 小时前
Stream 代码越写越难看?JDFrame 让 Java 逻辑回归优雅
java·后端
ray_liang13 小时前
用六边形架构与整洁架构对比是伪命题?
java·架构
AI软著研究员13 小时前
程序员必看:软著不是“面子工程”,是代码的“法律保险”
算法
FunnySaltyFish13 小时前
什么?Compose 把 GapBuffer 换成了 LinkBuffer?
算法·kotlin·android jetpack