2016. Maximum Difference Between Increasing Elements #
题目 #
- 给定下标从
0
开始的整数数组nums
,该数组的大小为n
。 - 计算
nums[j] - nums[i]
能求得的最大差值,其中0 <= i < j < n
且nums[i] < nums[j]
。 - 返回 最大差值。如果不存在满足要求的
i
和j
,返回-1
。
思路 #
模拟 #
- 类似 买卖股票的最佳时机
代码 #
模拟 #
class Solution {
public int maximumDifference(int[] nums) {
int ans = -1, maxVal = nums[0];
for (int num: nums) {
minVal = Math.min(minVal, num);
ans = Math.max(ans, num - minVal);
}
return ans > 0 ? ans : -1;
}
}