题目来源:https://leetcode-cn.com/problems/maximum-difference-between-increasing-elements/
大致题意:
给一个数组 nums,求出 nums[j] - nums[i] 的最大差值,其中 i < j,且 nums[i] < nums[j]
思路
- 遍历数组,使用变量存下已经遍历到的元素的最小值和目前的最大差值
- 每遍历到一个元素,若其大于已有的最小值,则尝试更新最大差值
public int maximumDifference(int[] nums) {
int min = nums[0];
int ans = -1;
int n = nums.length;
for (int i = 0; i < n; i++) {
if (nums[i] > min) {
ans = Math.max(ans, nums[i] - min);
}
min = Math.min(min, nums[i]);
}
return ans;
}