免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: qishking
打印 上一主题 下一主题

有100万个数字(1到9),其中只有1个数字重复2次,如何快速找出该数字 [复制链接]

论坛徽章:
5
狮子座
日期:2013-08-20 10:12:24午马
日期:2013-11-23 18:04:102015年辞旧岁徽章
日期:2015-03-03 16:54:152015亚冠之德黑兰石油
日期:2015-06-29 18:11:1115-16赛季CBA联赛之新疆
日期:2024-02-21 10:00:53
1 [报告]
发表于 2011-08-04 09:14 |显示全部楼层
1到9?100万?那么每个数字至少得出现10万次吧??

论坛徽章:
5
狮子座
日期:2013-08-20 10:12:24午马
日期:2013-11-23 18:04:102015年辞旧岁徽章
日期:2015-03-03 16:54:152015亚冠之德黑兰石油
日期:2015-06-29 18:11:1115-16赛季CBA联赛之新疆
日期:2024-02-21 10:00:53
2 [报告]
发表于 2011-08-04 09:51 |显示全部楼层
遍历一遍, 关健是遍历过程中, 每新发現一个肯定不是解,就时刻注意当前还可能为解的数目.
极端情形下,没啥好 ...
peidright 发表于 2011-08-04 09:17



    你在O(1)的空间下,能做到O(n)的复杂度??在没有特殊的算法的前提下(如异或)可能么?

论坛徽章:
5
狮子座
日期:2013-08-20 10:12:24午马
日期:2013-11-23 18:04:102015年辞旧岁徽章
日期:2015-03-03 16:54:152015亚冠之德黑兰石油
日期:2015-06-29 18:11:1115-16赛季CBA联赛之新疆
日期:2024-02-21 10:00:53
3 [报告]
发表于 2011-08-04 11:10 |显示全部楼层
回复 7# peidright


    如果只有1~9九个数字,肯定没意义,我回过了,但是假设有999999个各不相同的32位数,有一个数字和前面的一个数字重复,请问如何找到这个重复的数字呢?

论坛徽章:
5
狮子座
日期:2013-08-20 10:12:24午马
日期:2013-11-23 18:04:102015年辞旧岁徽章
日期:2015-03-03 16:54:152015亚冠之德黑兰石油
日期:2015-06-29 18:11:1115-16赛季CBA联赛之新疆
日期:2024-02-21 10:00:53
4 [报告]
发表于 2011-08-04 12:23 |显示全部楼层
回复 9# peidright


    是这样的,我以前好像看过类似的题目,有一个很巧妙的异或的解法。我去matrix67的博客找找……

论坛徽章:
5
狮子座
日期:2013-08-20 10:12:24午马
日期:2013-11-23 18:04:102015年辞旧岁徽章
日期:2015-03-03 16:54:152015亚冠之德黑兰石油
日期:2015-06-29 18:11:1115-16赛季CBA联赛之新疆
日期:2024-02-21 10:00:53
5 [报告]
发表于 2011-08-04 12:41 |显示全部楼层
回复 10# starwing83


    我记错了…………那个解法是针对求仅有一个数出现过奇数次的…………

论坛徽章:
5
狮子座
日期:2013-08-20 10:12:24午马
日期:2013-11-23 18:04:102015年辞旧岁徽章
日期:2015-03-03 16:54:152015亚冠之德黑兰石油
日期:2015-06-29 18:11:1115-16赛季CBA联赛之新疆
日期:2024-02-21 10:00:53
6 [报告]
发表于 2011-08-04 20:12 |显示全部楼层
回复 15# hidensu


    这位大神请问您知道啥叫时间复杂度吗?

论坛徽章:
5
狮子座
日期:2013-08-20 10:12:24午马
日期:2013-11-23 18:04:102015年辞旧岁徽章
日期:2015-03-03 16:54:152015亚冠之德黑兰石油
日期:2015-06-29 18:11:1115-16赛季CBA联赛之新疆
日期:2024-02-21 10:00:53
7 [报告]
发表于 2011-08-05 13:14 |显示全部楼层
回复 17# hidensu


    “很大提高效率”?有测试过?常数多少?具体算法?你以为只两个两个比就可以了?这个世界上不是所有的划分算法都是可以两个两个比的。

论坛徽章:
5
狮子座
日期:2013-08-20 10:12:24午马
日期:2013-11-23 18:04:102015年辞旧岁徽章
日期:2015-03-03 16:54:152015亚冠之德黑兰石油
日期:2015-06-29 18:11:1115-16赛季CBA联赛之新疆
日期:2024-02-21 10:00:53
8 [报告]
发表于 2011-08-05 18:05 |显示全部楼层
LS:您的方法都要求空间复杂度O(N),我想知道能不能在空间复杂度O(1)的前提下搞定

论坛徽章:
5
狮子座
日期:2013-08-20 10:12:24午马
日期:2013-11-23 18:04:102015年辞旧岁徽章
日期:2015-03-03 16:54:152015亚冠之德黑兰石油
日期:2015-06-29 18:11:1115-16赛季CBA联赛之新疆
日期:2024-02-21 10:00:53
9 [报告]
发表于 2011-08-10 10:42 |显示全部楼层
回复 32# cjaizss


    很有趣的问题:偶选奇可以用异或法达到O(1)的空间复杂度和O(n)的时间复杂度,然而嘛……奇选偶却无法用O(1)的空间复杂度达到O(n)的时间复杂度??这个是什么原因呢?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP