414 第三大的數

2021-10-25 17:21:19 字數 737 閱讀 2427

給你乙個非空陣列,返回此陣列中 第三大的數 。如果不存在,則返回陣列中最大的數。

示例 1:

輸入:[3, 2, 1]

輸出:1

解釋:第三大的數是 1 。

示例 2:

輸入:[1, 2]

輸出:2

解釋:第三大的數不存在, 所以返回最大的數 2 。

示例 3:

輸入:[2, 2, 3, 1]

輸出:1

解釋:注意,要求返回第三大的數,是指第三大且唯一出現的數。

存在兩個值為2的數,它們都排第二。

# 遍歷去重後的nums,每次遍歷都刪除最大值,遍歷兩次後的最大值為第三大的數

class

solution

:def

thirdmax

(self, nums: list[

int])-

>

int:

iflen

(set

(nums)

)<3:

return

max(nums)

else

: nums =

set(nums)

for i in

range(0

,2):

nums.remove(

max(nums)

)return

max(nums)

414 第三大的數

給定乙個非空陣列,返回此陣列中第三大的數。如果不存在,則返回陣列中最大的數。要求演算法時間複雜度必須是o n 示例 1 輸入 3,2,1 輸出 1 解釋 第三大的數是 1.示例 2 輸入 1,2 輸出 2 解釋 第三大的數不存在,所以返回最大的數 2 示例 3 輸入 2,2,3,1 輸出 1 解釋 ...

414 第三大的數

給定乙個非空陣列,返回此陣列中第三大的數。如果不存在,則返回陣列中最大的數。要求演算法時間複雜度必須是o n 示例 1 輸入 3,2,1 輸出 1 解釋 第三大的數是 1.示例 2 輸入 1,2 輸出 2 解釋 第三大的數不存在,所以返回最大的數 2 示例 3 輸入 2,2,3,1 輸出 1 解釋 ...

414 第三大的數

題目描述 給定乙個非空陣列,返回此陣列中第三大的數。如果不存在,則返回陣列中最大的數。要求演算法時間複雜度必須是o n 示例 1 輸入 3,2,1 輸出 1 示例 2 輸入 1,2 輸出 2 解釋 第三大的數不存在,所以返回最大的數 2 示例 3 輸入 2,2,3,1 輸出 1 解釋 注意,要求返回...