教你用c语言完成找单身狗问题

教你用c语言完成找单身狗问题,第1张

教你用c语言完成找单身狗问题

一组数据中只有两个数据单独出现,其余数据都是成对出现,找出 这些数据中单独的两个数并输出。

#include
#include
#include
#pragma warning(disable:4996)

void findnum(int num[],int len,int *xp,int *yp){
	assert(xp);
	assert(yp);
	*xp = 0;
	*yp = 0;
	step1
	int n = num[0];
	for (int i = 1; i < len; i++){
		n ^= num[i];
	}
	//1.n一定不是0!
	//2.n的二进制序列中,一定至少有一个1
	//3.x,y二进制,相同的部分一定是0,不同的部分一定是1,反过来,如果n中有一个比特位是1,一定是x,y对应的比特位是不同的
	step2
	int flag = 1;
	int i = 0;
	while (i 

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5432748.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-11
下一篇 2022-12-11

发表评论

登录后才能评论

评论列表(0条)

保存