13. /* 有1000000个数,每个数取值范围是0-999999,找出其中重复的数。 */
- #define COUNT 1000000
- int main(void)
- {
- int a[COUNT] = {0};
- for (int i = 0; i < COUNT; i++) {
- int number = arc4random_uniform(COUNT)%COUNT;
- //把随机数作为下标,值作为出现次数
- a[number - 1] ++;
- }
- //输出 重复的数字以及重复次数
- for(int i = 0 ;i < COUNT;i++){
- if (a[i] > 1) {
- printf("%d repeats %d times\n",i+1,a[i]);
- }
- }
- return 0;
- }
复制代码
|