题目
思路
小模拟,因为题目要求必须是下标大的元素减下标小的元素,所以这道题只需要一次顺序for循环就可以解决。使用result记录循环过程中记录的最大差值,minNum记录循环过程所遇到的最小的元素。从第二个元素开始循环,若第二个元素大于minNum,且差值大于result,则修改resultl;若第二个元素小于minNum,则修改minNum。
Python3解法
def maximumDifference(self, nums: List[int]) -> int:
result, minNum = -1, nums[0]
for i in range(1, len(nums)):
currentNum = nums[i]
if currentNum > minNum and currentNum - minNum > result:
result = currentNum - minNum
minNum = min(currentNum, minNum)
return result