【LeetCode】136.Single Number (Easy)
来源:互联网 发布:mac ps怎么导入字体 编辑:程序博客网 时间:2024/05/17 05:55
题意:给定一个数组,里面有一个元素只出现一次,其他都出现两次,要求O(n)时间复杂度,O(1)空间复杂度
用异或 a^a = 0,所有元素异或得到的结果就是只出现一次的。
int singleNumber(vector<int>& nums) { int s = 0; for (size_t i = 0; i < nums.size(); i++) s = s ^ nums[i]; return s; }
PS 位运算加减
【加法】计算a+b,先不考虑进位,0+0=1+1=0,0+1=1+0 =0,异或;只有1+1时进位为1,与
int sum(int a, int b){ int result = 0; while (b) { result = a ^ b; b = (a & b) << 1; a = result; } return result;}
【减法】a -b=a+(-b),求b补码然后做加法 [ b ]补 = ~b + 1
0 0
- 【LeetCode】136.Single Number (Easy)
- LeetCode 136. Single Number (Easy)
- LeetCode[136. Single Number] 难度[easy]
- 【LeetCode】(136)Single Number (Easy)
- 【Leetcode-easy-136】Single Number
- 136. Single Number (Easy)
- 136. Single Number 难度:easy
- 136. Single Number [easy] [python]
- LeetCode-Easy刷题(31) Single Number
- LeetCode 136. Single Number
- [Leetcode] 136. Single Number
- LeetCode 136. Single Number
- 【leetcode】136. Single Number
- 【LeetCode】136. Single Number
- Leetcode 136. Single Number
- leetcode 136. Single Number
- leetcode 136. Single Number
- 136. Single Number LeetCode
- 【JAVA基础小问题】short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错?
- 8. String to Integer (atoi)
- [分享]WeX5中 input拍照上传图片方法分享,可单图与多图
- Windows Server 2012搭建VPN服务器
- Linux安装FTP
- 【LeetCode】136.Single Number (Easy)
- 分享个Duilib中基于wke的浏览器控件
- android CoordinatorLayout使用总结(*****)
- linux下gcc/g++的命令和使用详解
- 可以访问外国公司的网站
- 安卓AsyncTask异步加载图片
- tcl调用python文件并传参
- proc文件系统介绍
- ERP中如下将单表的汇总表下载并且发送?