首页 > 其他 > 详细

414. 第三大的数

时间:2020-04-23 01:00:38      阅读:57      评论:0      收藏:0      [点我收藏+]

技术分享图片

 

 技术分享图片

 

 

两中写法都过了。

学到的是sorted()函数排其他可迭代对象后返回值是list类型。

 

代码一:

 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

 

414. 第三大的数

原文:https://www.cnblogs.com/panweiwei/p/12757650.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!