2022-02-26 2016\. 增量元素之间的最大差值

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

难度简单68

给你一个下标从 0 开始的整数数组 nums ,该数组的大小为 n ,请你计算 nums[j] - nums[i] 能求得的 **最大差值 **,其中 0 <= i < j < nnums[i] < nums[j]

返回 最大差值 。如果不存在满足要求的 ij ,返回 -1
这也能动态规划?

解题思路

维护一个到当前的最小值,该最小值必然和当前数组成当前数能构成的差的最大值。比较每一个数能组成的最大值,维护最终最大值即可。

代码


class Solution:
    def maximumDifference(self, nums: List[int]) -> int:
        m, ans = inf, 0
        for num in nums:
            m, ans = min(num, m), max(ans, num - m)
        return ans if ans > 0 else -1

作者:himymBen
链接:https://leetcode-cn.com/problems/maximum-difference-between-increasing-elements/solution/pythonjavajavascriptgo-dong-tai-gui-hua-n54z4/
来源:力扣(LeetCode)
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

你可能感兴趣的:(2022-02-26 2016\. 增量元素之间的最大差值)