兩中寫法都過了。函數
學到的是sorted()函數排其餘可迭代對象後返回值是list類型。spa
1 class Solution(object): 2 def thirdMax(self, nums): 3 """ 4 :type nums: List[int] 5 :rtype: int 6 """ 7 # 轉set去重 8 s = set(nums) 9 # 在轉回list 10 # nums = list(s) 11 # 降序排 12 # nums.sort(reverse=True) 13 # sorted()函數排序後返回的是list類型 14 nums = sorted(s, reverse=True) 15 if len(s) < 3: 16 return nums[0] 17 else: 18 return nums[2]
1 class Solution(object): 2 def thirdMax(self, nums): 3 """ 4 :type nums: List[int] 5 :rtype: int 6 """ 7 # 升序排 8 nums.sort() 9 index = 1 10 # 暫存nums最後一個元素 11 temp = nums[-1] 12 # 從倒數第二個元素倒序遍歷 13 for j in range(len(nums) - 2, -1, -1): 14 if index == 3: 15 return temp 16 if nums[j] == temp: 17 nums.pop(j) 18 else: 19 temp = nums[j] 20 index += 1 21 if index != 3: 22 return nums[-1] 23 else: 24 return temp