leetcode-Single Number II
来源:互联网 发布:apache主目录配置文件 编辑:程序博客网 时间:2024/06/07 02:20
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?
思路:
只有一个元素出现一次,其他元素均出现三次,故计算所有元素的对应位的1的个数,如:计算所有元素的最低位的1的个数,再模3,得到的结果即为single number的对应位。
代码:
int singleNumber(int A[], int n) {
int count=0;
int res=0;
int size=sizeof(int)*8;
for(int i=0; i<size; ++i)
{
for(int j=0; j<n; ++j)
{
if((A[j]&0x0001)!=0)
{
++count;
}
A[j]=A[j]>>1;
}
count=count%3;
int tmp=0;
if(count == 1)
{
tmp=1;
for(int k=0; k<i; ++k)
{
tmp=2*tmp;
}
}
res=res+tmp;
tmp=0;
count=0;
}
return res;
}
0 0
- Single Number II - leetcode
- Leetcode: Single Number II
- [LeetCode] Single Number II
- LeetCode: Single Number II
- leetcode -- Single Number II
- [leetcode]Single Number II
- [LeetCode] Single Number II
- 【leetcode】Single Number II
- LeetCode:Single Number II
- Leetcode: Single Number II
- leetcode :Single Number II
- Leetcode Single Number II
- [LeetCode]Single Number II
- leetcode: Single Number (II)
- leetcode Single Number II
- leetcode Single Number II
- [LeetCode],Single Number II
- LeetCode | Single Number II
- android 4.4 shareactionprovider小结
- WTL在Win8.1系统WM_DROPFILES无法响应的解决办法
- IO系统性能之一:衡量性能的几个指标
- POJ 1007
- redhat图形界面启动后出现桌面但是没有登录界面解决办法
- leetcode-Single Number II
- PAT_1008
- 插值算法
- miniui 选择器
- android 项目框架和资源
- 判断一个字符串是否为回文
- hibernate load 和get
- Android 代码设置TextView的大小颜色
- 经纬财富:蚌埠现货交易的优点