数组中只出现一次的数

转载 2013年12月03日 20:55:27

数组A中,除了某一个数字x之外,其他数字都出现了三次,而x出现了一次。请给出最快的方法找到x


#include <iostream>
#include <cstdlib>
#include <cstring>
using namespace std;
int findnumber(int a[],int n)
{
	int bits[32];
	int i,j;
	memset(bits,0,sizeof(bits));
	for (int i=0;i<n;i++)
	{
		for (int j=0;j<32;j++)
		{
			bits[j]+=((a[i]>>j)&1);
		}
	}
	int result=0;
	for(j=0;j<32;j++)
	{
		if (bits[j]%3!=0)
		{
			result+=(1<<j);
		}
	}
	return result;
}
int main()
{
	const int MAXN=10;
	int a[MAXN]={2, 3, 1, 2, 3, 4, 1, 2, 3, 1};
	cout<<findnumber(a,MAXN)<<endl;
	system("pause");
	return 1;
}


相关文章推荐

位运算求数组中只出现一次的数

今天偶然看到的有趣的问题,有好几个系列,感受位运算的小魅力。 当然下面的题可以用map来简单算出,所以下面的题要求时间复杂度为O(n),空间复杂度为O(1)。1. 简单版 一个数组中,只有一个数...
  • wbin233
  • wbin233
  • 2017年06月11日 01:35
  • 187

数组中只出现一次的数

本文地址:http://blog.csdn.net/morewindows/article/details/12684497转载请标明出处,谢谢。 欢迎关注微博:http://weibo.com...

找出数组中唯二出现一次的数

原题取自https://leetcode.com/problems/single-number-iii/?tab=Description 题目要求找出数组中唯二出现一次的数,其余数均只出现两次。 要...

找出数组中只出现一次的2个数

本文转载自:http://blog.csdn.net/fanzitao/article/details/7900764 题目:一个整型数组里除了两个数字之外,其他的数字都出现了两次。请写程序...
  • vgxpm
  • vgxpm
  • 2015年08月20日 19:51
  • 364

找出数组中只出现一次的2个数

题目:一个整型数组里除了两个数字之外,其他的数字都出现了两次。请写程序找出这两个只出现一次的数字。要求时间复杂度是O(n),空间复杂度是O(1)。 思路整理一下: 首先交待一下异或的基本性质:2个...

C语言:求一个数组中只出现一次的两个数

环 境: Windows 8,Visual Studio 2013 语 言: C语言 实验要求: 给定一个偶数个数的数组,其中有两个数只出现了一次,请通过C语言代码,让计算...

数组中只出现一次的数

1.数组中有一个数字只出现一次数组中有很多成对出现的数字,这些数字的顺序是随机出现的。但是里面有一个数字缺失,怎样用最快的方式将这一个数字找出来?由于只有一个数字是出现一次,其他都是成对出现的,所以此...

寻找数组中丢失的、者重复的、或者出现一次的的数的问题汇总

1. 集合增量问题 一组大小为1到n的牌,抽走一张,求抽走的是哪张牌? 此类问题特点: 输入:1)已知原始集合:或者是直接给定一个数组,或者是给一个描述,比如1到n,每个数出现一次(或2次),总之...
  • binling
  • binling
  • 2014年12月22日 18:18
  • 485

典型的Top K算法_找出一个数组里面前K个最大数...或找出1亿个浮点数中最大的10000个...一个文本文件,找出前10个经常出现的词,但这次文件比较长,说是上亿行或十亿行,总之无法一次读入内存,

Top K 算法详解 应用场景:         搜索引擎会通过日志文件把用户每次检索使用的所有检索串都记录下来,每个查询串的长度为1-255字节。         假设目前有一千万个记录(...

260. Single Number III (找到数组中仅出现一次的两个数)

Given an array of numbers nums, in which exactly two elements appear only once and all the other el...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:数组中只出现一次的数
举报原因:
原因补充:

(最多只允许输入30个字)