Find first repeating element in an array of integers

If you want to practice data structure and algorithm programs, you can go through 100+ data structure and algorithm programs.

In this post, we will see how to find the first repeating element in array of integers.


Problem

Find the first repeating element in array of integers.
For example:

Input: array[] = {10, 7, 8, 1, 8, 7, 6}
Output: 7 [7 is the first element actually repeats]

Solution

Simple solution will be use two loops. Outer loop will iterate through loop and inner loop will check if element is repeated or not but time complexity of this solution will be o(n^2).

Another solution will be to create another array and sort it.Pick element from original array and find the element in sorted array using binary search but time complexity of this solution will be o(n^logn).
Can we do better?
Yes, we can iterate from right to left and use HashSet to keep track fo minimumIndex

  • Intialize minimumIndex with -1
  • Iterate over input array from right to left
  • If element is already present in Hashset, then update the minimumIndex else add element to the set
  • Once we are done with iteration, we will get minimumIndex in the end

Program to find the first repeating element in an array of integers

When you run above program, you will get below output:

The first repeating element in array is 7

The time complexity of this solution is O(n) and space complexity is also O(n).

That’s all about how to Find the first repeating element in an array of integers.

Was this post helpful?

Leave a Reply

Your email address will not be published. Required fields are marked *