题解 | #最大差值#
最大差值
https://www.nowcoder.com/practice/a01abbdc52ba4d5f8777fb5dae91b204
# # 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 # # # @param A int整型一维数组 # @param n int整型 # @return int整型 # class Solution: def getDis(self , A: List[int], n: int) -> int: # write code here ''' 其实维护了一个最大值与最小值,从第一个元素开始遍历,如果当前元素小于最小值就更新最小值与最大值。如果大于最小值,则计算当前值与最小值的差。时间O(N),空间O(1) ''' mins=A[0] maxs=A[0] ans=maxs-mins for i in range(1,n): if A[i]>=mins: maxs=A[i] ans=max(ans,maxs-mins) else: maxs=A[i] mins=A[i] ans=max(ans,maxs-mins) return ans