Count distinct elements of an array

Write a program to Count distinct elements of an array.

Example:

Input:  arr[]={3,4,5,3,4,2,1}
Output: Count of Distinct elements is 5
C Program

#include <stdio.h>

int main()
{
    int arr[] = {3453421};

    //find the length of array
    int n = sizeof(arr) / sizeof(arr[0]);

    int maximum = 0;

    //find the maximum of the array
    for (int i = 0i < ni++)
    {
        if (arr[i] > maximum)
        {
            maximum = arr[i];
        }
    }

    int freq[maximum + 1];

    for (int i = 0i <= maximumi++)
    {
        freq[i] = 0;
    }
    //find the frequency of each elements
    //in the array
    for (int i = 0i < ni++)
    {
        freq[arr[i]]++;
    }

    int count = 0;
    for (int i = 0i <= maximumi++)
    {
        if (freq[i] > 0)
        {
            count++;
        }
    }
    printf("Count of Distinct elements is %d"count);
    return 0;
}


No comments:

Post a Comment