从一百个数中找不存在的数
来源:互联网 发布:网络与新媒体就业方向 编辑:程序博客网 时间:2024/05/21 05:06
这个题目应该出现过了,使用异或运算应该是最快的方法了,加法也可以,但是加法应该比不上逻辑运算的速度。。
(另外我也想求求关于现代CPU执行 加法的需要多少时钟周期, 逻辑异或需要多少时钟周期 ? 的干货 )
首先得到 1-100 这些数字异或后得到的数字 Y= 1^2^..^100,使用循环99次得到.
然后用着Y 去异或那个99个数的数字, 最后Y里保存的就是缺失了的数字。 也是99次循环。
其实是同学提到的,他搞ACM,我很菜。。
原理:
Y = a^b^c;
e = Y ^ a ^ c = a^b^c^a^c = a^a^b^c^c = 0 ^ b ^ 0 = b .. 就是缺少了的b,异或运算的性质应该没记错。
(另外我也想求求关于现代CPU执行 加法的需要多少时钟周期, 逻辑异或需要多少时钟周期 ? 的干货 )
首先得到 1-100 这些数字异或后得到的数字 Y= 1^2^..^100,使用循环99次得到.
然后用着Y 去异或那个99个数的数字, 最后Y里保存的就是缺失了的数字。 也是99次循环。
其实是同学提到的,他搞ACM,我很菜。。
原理:
Y = a^b^c;
e = Y ^ a ^ c = a^b^c^a^c = a^a^b^c^c = 0 ^ b ^ 0 = b .. 就是缺少了的b,异或运算的性质应该没记错。
阅读全文
0 0
- 从一百个数中找不存在的数
- 深搜从n个数中找和为k的数
- 从10万个数中找10个最大的数
- 从n个数中找出每个数的重复数
- d025: 从 n 个数中挑选出最大的数
- 从5个数中选择三个数的回溯算法
- 从M个数中选择前N大的数
- 从 n 个数中挑选出最大的数
- 从数组中计算出每个数的个数
- N个数中找三个数,使其和的绝对值最小--
- 算法面试题:在N个数中,找和为M的两个数
- 在5个数中找最大的数,并把他放入MAX单元
- 从1到n的数中1出现的个数&&寻找丑数
- 大顶堆,n个数中找最小的k个数
- 大数(一亿个数)中求前一百个最大的数输出问题
- 输入一个数,求从一到那个数中1出现的个数
- java快排,找第K小的数,找前K个数
- 找0的个数
- linq.js (linq to js)使用汇总
- 解决Logical Reads高的方法和实验
- Oracle数据库整理(上)
- 安装mysql时,visual distributable package 2013
- okHttp 添加动态的 超时时间 处理
- 从一百个数中找不存在的数
- 【转】angularJS的兄弟controller之间如何正确的通信
- 问题:删除volume报错
- 多态&多态对象模型
- CNTK API文档翻译(13)——CIFAR-10数据准备
- JavaScript函数
- 颜色特征识别—识别红色,黄色,绿色,蓝色排针的数量
- Excel在统计分析中的应用—第二章—描述性统计-Part3-偏度(偏斜度和矩偏度系数)
- [USACO3.1]丑数 Humble Numbers