数组中只出现一次的数字
来源:互联网 发布:pdf阅读器源码 编辑:程序博客网 时间:2024/06/04 23:35
一个整型数组里除了两个数字之外,其他的数字都出现了两次。请写程序找出这两个只出现一次的数字。
class Solution {public: void FindNumsAppearOnce(vector<int> data,int* num1,int *num2) { if(data.size()<2){ *num1=0; *num2=0; return; } int resultExclusiveOR=0; for(int i=0;i<data.size();i++) resultExclusiveOR^=data[i]; unsigned int indexOf1=FindFirstBitIs1(resultExclusiveOR); *num1=*num2=0; for(int j=0;j<data.size();j++){ if(IsBit1(data[j],indexOf1)) *num1^=data[j]; else *num2^=data[j]; } } unsigned int FindFirstBitIs1(int num){ int indexBit=0; while(((num&1)==0)&&(indexBit<8*sizeof(int))){ num=num>>1; ++indexBit; } } bool IsBit1(int num,unsigned int indexBit){ num=num>>indexBit; return (num&1); }};
0 0
- 数组中只出现一次的数字
- 数组中只出现一次的数字
- 数组中只出现一次的数字
- 数组中只出现一次的数字
- 数组中只出现一次的数字
- 数组中只出现一次的数字
- 数组中只出现一次的数字
- 数组中只出现一次的数字
- 数组中只出现一次的数字
- 数组中只出现一次的数字
- 数组中只出现一次的数字
- 数组中只出现一次的数字
- 数组中只出现一次的数字
- 数组中只出现一次的数字
- 数组中只出现一次的数字
- 数组中只出现一次的数字
- 数组中只出现一次的数字
- 数组中只出现一次的数字
- IOS吐槽狂人:谷歌第三方解析爆红的解决步骤
- 输入一棵二叉树,判断该二叉树是否是平衡二叉树。
- [Laravel学习笔记] 安装Laravel
- iOS swift中取枚举类型原始值的方法
- C# Socket与实现
- 数组中只出现一次的数字
- [UVALive 6693]Flow Game计算几何,线代相交
- java解惑--谜题13:畜牧场
- 第四章:UML序列图
- C/C++ Swap without using extra variable
- 看了周忆博客之后的感想
- 乱码注意事项
- 和为S的连续正数序列
- BASE64Decoder小解