给定一个非空数组,返回此数组中的第三个最大数。 如果不存在,则返回最大数量。 时间复杂度必须在O(n)中。
class Solution(object):
def thirdMax(self, nums):
"""
:type nums: List[int]
:rtype: int
"""
a = b = c =None
for n in nums:
if n > a:
a,b,c = n,a,b
elif a > n > b:
b,c = n,b
elif b > n > c:
c = n
return c if c is not None else a