文档章节

leetcode414-第三大的数

o
 osc_odyg6b92
发布于 2018/07/13 09:42
字数 269
阅读 7
收藏 0
def

行业解决方案、产品招募中!想赚钱就来传!>>>

给定一个非空数组,返回此数组中第三大的数。如果不存在,则返回数组中最大的数。要求算法时间复杂度必须是O(n)。

示例 1:

输入: [3, 2, 1]

输出: 1

解释: 第三大的数是 1.

示例 2:

输入: [1, 2]

输出: 2

解释: 第三大的数不存在, 所以返回最大的数 2 .

示例 3:

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

输出: 1

解释: 注意,要求返回第三大的数,是指第三大且唯一出现的数。
存在两个值为2的数,它们都排第二。

 
 
碰到重复元素的情况就要想到set。
 1 class Solution:
 2     def thirdMax(self, nums):
 3         """
 4         :type nums: List[int]
 5         :rtype: int
 6         """
 7         # 用set去除重复元素,但是set不支持下标操作,所以再转成list
 8         # 这里直接赋给nums,不用再定义一个变量
 9         nums = list(set(nums))
10         nums.sort()
11         # 如果集合长度小于3,直接返回最大元素
12         if len(nums) < 3:
13             return max(nums)
14         else:
15             return nums[-3]

 

 
 
o
粉丝 1
博文 500
码字总数 0
作品 0
私信 提问
加载中
请先登录后再评论。
微信框架的几个层次

第一层次:通信处理 对访问微信服务器进行处理,主要解决报文来来去去的问题。这里采用的技术一般是HttpClient或类似的技术。 第二层次:报文解析 通过对报文进行解析,让程序员直接要拿到的...

悠悠然然
2015/12/01
9.3K
58
在Google使用Borg进行大规模集群的管理 5-6

使用效率 Borg的一个主要目的就是有效的利用Google的机器舰队,这可是一大笔财务投资:让效率提升几个百分点就能省下几百万美元。这一节讨论了和计算了一些Borg使用的技术和策略。 5.1 测度方...

难易
2015/10/14
1.7K
3
提高数据库查询性能浅谈

1)数据库设计方面: a. 对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。 b. 应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎...

hello菜bird
2016/02/25
1.8K
3
Android 自动存储Log、在线Log追踪

软件背景 当线上产品人数达到一定级别时,软件的维护,BUG的解决就变得至关重要。 但测试阶段发现的BUG毕竟有限,一旦上线后只能靠一些第三放的Crash追踪平台解决,而对于非Crash又无法复现的...

qiujunsen
2016/03/07
423
4
Java工具类--使用模板方法导出Excel

之前使用poi导出excel,每次都是使用API去一步步画出excel的样式,这种方法在遇到复杂的excel需求时,会浪费很多时间。后来决定尝试使用模板的方法进行导出,这样只需要关心要导出的数据即可...

晓叹星沉
2016/06/07
6.8K
0

没有更多内容

加载失败,请刷新页面

加载更多

如何在SQL Server中将多行文本合并为单个文本字符串?

问题: Consider a database table holding names, with three rows: 考虑一个包含名称的数据库表,该表具有三行: PeterPaulMary Is there an easy way to turn this into a single str......

富含淀粉
27分钟前
9
0
在JavaScript中生成特定范围内的随机整数? - Generating random whole numbers in JavaScript in a specific range?

问题: 如何可以生成两个指定的变量之间的随机整数在JavaScript中,例如x = 4和y = 8将输出任何的4, 5, 6, 7, 8 ? 解决方案: 参考一: https://stackoom.com/question/6PRz/在JavaScript中...

fyin1314
57分钟前
8
0
Vim清除最后一个搜索突出显示 - Vim clear last search highlighting

问题: Want to improve this post? 想要改善这篇文章吗? Provide detailed answers to this question, including citations and an explanation of why your answer is correct. 提供此问题......

技术盛宴
今天
23
0
马化腾每天刷 Leetcode?代码你打算写到几岁?

本文作者:o****0 前几天,一张未证真伪的截图流传,图中显示马化腾几乎每天都会在 Leetcode 上提交代码。 截图还贴出一个 Leetcode 账户地址。该地址的头像已从马化腾的照片换成腾讯 logo,...

百度开发者中心
前天
13
0
滴滴 3000+ Kylin Cube 背后的实践经验揭秘

本次分享主要有三个部分:Kylin 在滴滴的整体应用、架构的实践经验、滴滴全局字典最新版本的实现以及 Kylin 最新实时 OLAP 探索经验分享。 Kylin 在滴滴的应用&架构 Kylin 在滴滴的三类应用场...

浪尖聊大数据
昨天
9
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部