看流星社区

 找回密码
 注册账号
查看: 1813|回复: 0

[算法练习]从一个正数数组中找出重复的数,假设数组的值的范围都小于65536

[复制链接]

该用户从未签到

发表于 2017-6-1 13:33:04 | 显示全部楼层 |阅读模式
思路:要找的数放到一个数组传进来,我们的函数以要寻找的数为下标,如果这个下标对应的值超过1 就重复了

#include <stdio.h>

#define MAX 65536

void FindRep(int a[],int n)
{
        int temp[MAX] = {0};
        int i = 0;

        for (i = 0; i < n; i++)
        {
                temp[a]++;
        }

        printf("Num\tCount\n");
        printf("---\t-----\n");
        for (i = 0; i < MAX; i++)
        {
                if(temp > 1)
                        printf("%d\t%d\n",i,temp);
        }
}

void main()
{
        int test[10] = {1,1,2,3,6,6,6,7,2,9};

        for (int i = 0; i < 10; i++)
        {
                printf("%d,",test);
        }
        printf("\n");
        FindRep(test,10);
        getchar();
}[/code]
点击按钮快速添加回复内容: 支持 高兴 激动 给力 加油 苦寻 生气 回帖 路过 感恩
您需要登录后才可以回帖 登录 | 注册账号

本版积分规则

小黑屋|手机版|Archiver|看流星社区 |网站地图

GMT+8, 2024-3-19 15:16

Powered by Kanliuxing X3.4

© 2010-2019 kanliuxing.com

快速回复 返回顶部 返回列表