• 414. Third Maximum Number


    Given a non-empty array of integers, return the third maximum number in this array. If it does not exist, return the maximum number. The time complexity must be in O(n).

    Example 1:

    Input: [3, 2, 1]
    
    Output: 1
    
    Explanation: The third maximum is 1.
    

    Example 2:

    Input: [1, 2]
    
    Output: 2
    
    Explanation: The third maximum does not exist, so the maximum (2) is returned instead.
    

    Example 3:

    Input: [2, 2, 3, 1]
    
    Output: 1
    
    Explanation: Note that the third maximum here means the third maximum distinct number.
    Both numbers with value 2 are both considered as second maximum.
    
    class Solution(object):
        def thirdMax(self, nums):
            """
            :type nums: List[int]
            :rtype: int
            """
            a,b,c = -2147483649,-2147483649,-2147483649
            for i in range(len(nums)):
                if nums[i]>a:
                    c = b
                    b = a
                    a = nums[i]
                elif (nums[i]>b and nums[i]<a):
                    c = b
                    b = nums[i]
                elif (nums[i]>c and nums[i]<b):
                    c = nums[i]
            return a if (c==-2147483649 or c==b) else c
  • 相关阅读:
    第十二周作业
    第十一周作业
    第十周作业
    第九周作业
    第八周作业
    bzoj3561DZY Loves Math VI
    bzoj3529[Sdoi2014]数表
    bzoj3309DZY Loves Math
    bzoj2823[AHOI2012]信号塔
    bzoj2301[HAOI2011]Problem b
  • 原文地址:https://www.cnblogs.com/bernieloveslife/p/7742885.html
Copyright © 2020-2023  润新知