137. Single Number II (Bit)
Given an array of integers, every element appears three times except for one. Find that single one.
Note:
Your algorithm should have a linear runtime complexity. Could you implement it without using extra memory?
思路:用变量分别存储出现一次、两次、三次的number
出现一次的number: 抑或操作去除了出现两次的可能,与未出现三次的number作“与操作”去除了出现三次的可能
出现两次的number:与出现一次的number作“与操作”
出现三次的number: 出现一次的number“与操作”出现两次的number
class Solution {
public:
    int singleNumber(int A[], int n) {
        int once = ;
        int twice = ;  
        for (int i = ; i < n; i++) {
            twice |= once & A[i]; //the num appeared 2 times
            once ^= A[i];  //the num appeared 1 times
            int not_three = ~(once & twice);  //the num not appeared 3 times
            once = not_three & once;  //remove num appeared 3 times from once
            twice = not_three & twice;  //remove num appeared 3 times from twice
        }
        return once;
    }
};
137. Single Number II (Bit)的更多相关文章
- leetcode 136. Single Number 、 137. Single Number II 、 260. Single Number III(剑指offer40 数组中只出现一次的数字)
		
136. Single Number 除了一个数字,其他数字都出现了两遍. 用亦或解决,亦或的特点:1.相同的数结果为0,不同的数结果为1 2.与自己亦或为0,与0亦或为原来的数 class Solu ...
 - LeetCode 137. Single Number II(只出现一次的数字 II)
		
LeetCode 137. Single Number II(只出现一次的数字 II)
 - 【LeetCode】137. Single Number II 解题报告(Python)
		
[LeetCode]137. Single Number II 解题报告(Python) 标签: LeetCode 题目地址:https://leetcode.com/problems/single- ...
 - Leetcode 137 Single Number II 仅出现一次的数字
		
原题地址https://leetcode.com/problems/single-number-ii/ 题目描述Given an array of integers, every element ap ...
 - 【LeetCode】137. Single Number II (3 solutions)
		
Single Number II Given an array of integers, every element appears threetimes except for one. Find t ...
 - [LeetCode] 137. Single Number II 单独的数字之二
		
Given a non-empty array of integers, every element appears three times except for one, which appears ...
 - 详解LeetCode 137. Single Number II
		
Given an array of integers, every element appears three times except for one, which appears exactly ...
 - LeetCode 137 Single Number II(仅仅出现一次的数字 II)(*)
		
翻译 给定一个整型数组,除了某个元素外其余的均出现了三次. 找出这个元素. 备注: 你的算法应该是线性时间复杂度. 你能够不用额外的空间来实现它吗? 原文 Given an array of inte ...
 - [LeetCode] 137. Single Number II 单独数 II
		
Given a non-empty array of integers, every element appears three times except for one, which appears ...
 
随机推荐
- Image.Url 无法使用 Server.MapPath(使用后无论如何也不显示)
			
Image.Url 无法使用 Server.MapPath(使用后无论如何也不显示)
 - Linux查看系统中socket状态
			
当我们打开的socket数量很多时,netstat就会变得慢了,有什么办法可以快速查看系统中socket状态? IPv4: $ cat /proc/net/sockstat sockets: used ...
 - axios请求带上cookie配置
			
Axios.defaults.withCredentials = true 参考:https://segmentfault.com/a/1190000008872646
 - PHP中Notice: unserialize(): Error at offset of bytes in on line 的解决方法
			
使用unserialize函数将数据储存到数据库的时候遇到了这个报错,后来发现是将gb2312转换成utf-8格式之后,每个中文的字节数从2个增加到3个之后导致了反序列化的时候判断字符长度出现了问题, ...
 - android的特点有哪些
			
android拥有完善的应用程序框架,支持4大应用组件activity,service,contentProvider,broadcast,可以在任意层次上进行复用和更换: android中java字 ...
 - centos7 redis配置
			
https://www.cnblogs.com/web424/p/6796993.html
 - 【坑】tableView cell默认选中
			
在tableView展示的过程时候,如果想一开始就有一些cell默认被选中,不能在cellForRowAtIndexPath中cell.selected=YES, 必须在willDisplayCell ...
 - css-选择器性能
			
ID选择器 比如#header 类选择器 比如.promo 元素选择器 比如 div 兄弟选择器 比如 h2 + p 子选择器 比如 li > ul 后代选择器 比如 ul a 7. 通用选择器 ...
 - 遍历DOM树,each()遍历
			
在<jQuery教程/理解选取更新范围>一节中,我们知道:当选择器返回了多个元素时,可以使用一个方法来更新所有的元素,不再需要使用循环. 然后有的时候需要遍历元素,怎么办? 使用each( ...
 - python的垃圾回收机制【转】
			
http://python.jobbole.com/82061/ http://www.jianshu.com/p/1e375fb40506 https://www.cnblogs.com/vamei ...