Write a C program to find the duplicate element in an array?

Find the duplicate number in array: For example, an array with length 5 contains numbers {1, 2, 3, 4, 4}, the duplicated number is 4. Suppose that the duplicated number in the array is m in given example. The sum of all numbers in the array, denoted as arrSum, should be the result of 1+2+...+(n-1)+m. It is not difficult to get the sum of 1+2+...+(n-1), which is denoted as sum. The duplicated number m will be the difference of arrSum and sum. Following C program demonstrates how do we detect a repeated element in an integer array?.

/* An array of size N contains numbers ranging from 1 to N-1.
   There is exactly one number is duplicated in the array.
   Write a C program to find the duplicated number?
*/
#include <stdio.h>
#define N 5
int main()
{
  int arr[N]; //contains integers from 1 to N-1
  int arrSum = 0; //sum of array elements
  int sum = (N * (N - 1)) / 2; //sum of 1 to N-1
  int i; //loop counter
  printf("Enter %d integers form 1 to %d, with one duplicate:", N, N-1);
  for (i = 0; i < N; i++)
  {
    scanf ("%d", &arr[i]);
    arrSum += arr[i];
  }
 
  printf("\nDuplicate number is: %d\n", arrSum - sum);
}



Get Free Tutorials by Email

About the Author

is the main author for cs-fundamentals.com. He is a software professional (post graduated from BITS-Pilani) and loves writing technical articles on programming and data structures.

Today's Tech News

AlphaBay and Hansa dark web markets shut downPosted on Thursday July 20, 2017

The AlphaBay and Hansa marketplaces were known for trade in drugs, weapons and malware.

Kodi magazine 'directs readers to pirate content'Posted on Thursday July 20, 2017

The guide is being investigated by the Federation Against Copyright Theft.

Bitcoin swings as civil war loomsPosted on Thursday July 20, 2017

The Bitcoin community must agree how to tackle a slowdown in transaction times to avoid a schism.

Courtesy BBC News

AD BLOCKER DETECTED!

Advertisements help running this site for free.


To view the content please disable AdBlocker and refresh the page.

×