//有一个数组,存储的元素为1到10000000的任意数,在其中查找出一个重复的数字#include <stdio.h> int a[3]={1,10000000,10000000}; static unsigned char b[10000000/8+1]; int i; void main() { for (i=0;i<3;i++) { if (b[a[i]/8]&(1<<(a[i]%8))) break; else b[a[i]/8]|=(1<<(a[i]%8)); } if (i<3) printf("%d\n",a[i]); else printf("Can not find.\n"); }
有一个数组,存储的元素为1到10000000的任意数,在其中查找出一个重复的数字
本文介绍了一个简单的C语言程序,用于在一个包含1到10000000范围内的整数数组中查找重复的数字。该算法利用位操作来标记已遍历过的数字,从而高效地找出重复项。


被折叠的 条评论
为什么被折叠?



