|
网站首页
|
业界新闻
|
小组
|
威客
|
人才
|
下载频道
|
博客
|
代码贴
|
在线编程
|
编程论坛
|
登录
注册
短消息
我发表的主题
我参与的主题
我收藏的贴子
我上传的附件
我下过的附件
编辑个人资料
我的博客
用户控制面板
搜索
道具
恢复默认风格
碧海青天
秋意盎然
棕红预览
粉色回忆
蓝雅绿
紫色淡雅
青青河草
e点小镇
橘子红了
红红夜思
水晶紫色
雪花飘飘
新年快乐
风格
短消息
论坛展区
帮助
编程论坛
→
开发语言
→
『 数据结构与算法 』
→ 经典算法题求解
我的收件箱(0)
欢迎加入我们,一同切磋技术
用户名:
密 码:
共有
3505
人关注过本帖
标题:
经典算法题求解
只看楼主
加入收藏
某一天
等 级:
论坛游民
威 望:
1
帖 子:33
专家分:77
注 册:2015-6-15
结帖率:
0
楼主
收藏
已结贴
√
问题点数:10 回复次数:5
经典算法题求解
一个含n个元素的整数数组至少存在一个重复数,请编程实现,在O(n)时间内找出其中任意一个重复数。
搜索更多相关主题的帖子:
经典
元素
2017-06-13 09:30
举报帖子
使用道具
赠送鲜花
九转星河
来 自:长长久久
等 级:
贵宾
威 望:
52
帖 子:5023
专家分:14003
注 册:2016-10-22
第
2
楼
收藏
得分:5
记得上次遇到过一条相反的问题是找唯一不重复数的~这试试用哈希处理?~感觉可以编一张哈希表覆盖整个整数范围~
[code]/*~个性签名:bug是什么意思?bug是看上去没有可能的东西实际上是有可能做到的 就是这样~2018-08-08更~*/[/code]
2017-06-13 12:15
举报帖子
使用道具
赠送鲜花
yangfrancis
等 级:
贵宾
威 望:
141
帖 子:1510
专家分:7661
注 册:2014-5-19
第
3
楼
收藏
得分:5
我能够想到的最快方法是先归并排序,再线性检查相邻元素
2017-06-13 12:16
举报帖子
使用道具
赠送鲜花
九转星河
来 自:长长久久
等 级:
贵宾
威 望:
52
帖 子:5023
专家分:14003
注 册:2016-10-22
第
4
楼
收藏
得分:0
回复 3楼 yangfrancis
归并排序的时间复杂度为o(n*log(n))~还是用哈希表合理~
[code]/*~个性签名:bug是什么意思?bug是看上去没有可能的东西实际上是有可能做到的 就是这样~2018-08-08更~*/[/code]
2017-06-13 13:37
举报帖子
使用道具
赠送鲜花
yangfrancis
等 级:
贵宾
威 望:
141
帖 子:1510
专家分:7661
注 册:2014-5-19
第
5
楼
收藏
得分:0
嗯。归并的时间复杂度不合要求。至于哈希表,我还不懂的
2017-06-13 22:24
举报帖子
使用道具
赠送鲜花
九转星河
来 自:长长久久
等 级:
贵宾
威 望:
52
帖 子:5023
专家分:14003
注 册:2016-10-22
第
6
楼
收藏
得分:0
看数据范围有多大了,如果考虑哈希冲突的话,可以先开一个100w规模数组对尾部五个位的数字进行基数排序(注意用链表动态分配空间),或者正常来说普通基数排序后5位也可以~通常int不会超过11位,然后对前6个位进行哈希检测(就是总是一次能搜到结果,如果有重复的就输出那个重复数可以了),内判断有没有重复的~时间复杂度完全有可能在o(n)实现
~
[此贴子已经被作者于2018-3-29 02:06编辑过]
[code]/*~个性签名:bug是什么意思?bug是看上去没有可能的东西实际上是有可能做到的 就是这样~2018-08-08更~*/[/code]
2018-03-29 02:05
举报帖子
使用道具
赠送鲜花
6
1/1页
1
快速回复:
经典算法题求解
数据加载中...
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.016545 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved