博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
寻找缺失的数
阅读量:6435 次
发布时间:2019-06-23

本文共 775 字,大约阅读时间需要 2 分钟。

寻找缺失的数

给出一个包含 0 .. N 中 N 个数的序列,找出0 .. N 中没有出现在序列中的那个数。

 
您在真实的面试中是否遇到过这个题?
Yes
样例

N = 4 且序列为 [0, 1, 3] 时,缺失的数为2

注意

可以改变序列中数的位置。

挑战

在数组上原地完成,使用O(1)的额外空间和O(N)的时间。

 

 

嗯。。 用一个int 保存结果,初值设为0,之后将每个int的值和下标和结果变量异或就好。

位运算好久没用过了,这还是去百度了才想起来。。。

1 class Solution { 2 public: 3     /**     4      * @param nums: a vector of integers 5      * @return: an integer 6      */ 7     int findMissing(vector
&nums) { 8 // write your code here 9 vector
::iterator it;10 int a = 0;11 int i = 0;12 for(it = nums.begin();it != nums.end();it++) {13 a ^= (i+1)^(*it);14 i++;15 }16 return a;17 }18 };
View Code

 

转载于:https://www.cnblogs.com/FJH1994/p/4983287.html

你可能感兴趣的文章
WinForm读取指定的config文件的内容
查看>>
SqliteHelper整理(转载)
查看>>
Global.asax或IHttpModule实现屏蔽ip和图片防盗链
查看>>
SOCKET CLOSE_WAIT 搜集
查看>>
认识数据地图
查看>>
【Programming Clip】06、07年清华计算机考研上机试题解答(个别测试用例无法通过)...
查看>>
eval()用法
查看>>
尽力而为
查看>>
教你如何将UIImageView视图中的图片变成圆角
查看>>
pku 2635 The Embarrassed Cryptographer 数论——素数筛选法+模拟大数除法
查看>>
还有什么不能做?——细谈在C#中读写Excel系列文章之一
查看>>
[学习笔记]Hadoop 配置调试错误收集
查看>>
网络摘录
查看>>
ehcache + mysql例子与性能测试
查看>>
Java学习笔记50:JSONObject与JSONArray的使用
查看>>
linuxMint下安装ftp工具--filezilla
查看>>
[sh]uniq-sort-awk
查看>>
linux命令(8)kill命令
查看>>
序列变换(Lis变形)
查看>>
ArrayList用法
查看>>