Programs


Title : Program to find majority element of an array

#include <stdio.h>

void findMajorityElement(int *arr1, int arr_size)

{

   int i, mIndex = 0, ctr = 1;

   for (i = 1; i < arr_size; i++)

   {

       if (arr1[mIndex] == arr1[i])

           ctr++;

       else

           ctr--;

       if (ctr == 0)

       {

           mIndex = i;

           ctr = 1;

       }

   }

   ctr = 0;

   for (i = 0; i < arr_size; i++)

   {

       if (arr1[i] == arr1[mIndex])

           ctr++;

   }

   if (ctr > (arr_size / 2))

       printf("The majority of the Element : %d\n", arr1[mIndex]);

   else

       printf("No majority element found in the array.\n");

}

int main()

{

   int i, sum;

   int arr1[] = {2, 2, 2, 1, 2, 5, 7, 9, 2};

   int ctr = sizeof(arr1) / sizeof(arr1[0]);

     printf("The given array is :  ");

   for (i = 0; i < ctr; i++)

   {

       printf("%d  ", arr1[i]);

   }

   printf("\n");

     findMajorityElement(arr1, ctr);

   return 0;

}

OUTPUT:

The given array is :  2  2  2  1  2  5  7  9  2 

The majority of the Element : 2

Related Topics

  • Integer x appears more than n by 2 times in sorted array

      Jan 15, 2022

  • Program to print a matrix in spiral form

      Jan 03, 2022

  • WAP to find the maximum circular sub array sum of given array

      Jan 03, 2022

  • Program to count the number of triangles from a given array

      Jan 03, 2022

  • WAP to find the number of times occurs a given number in an array

      Jan 03, 2022

  • Program to sort an array of 0s, 1s and 2s.

      Jun 30, 2021

  • Subscribe Now