Finding the first unique element in a sorted array in JavaScript

JavascriptWeb DevelopmentObject Oriented ProgrammingFront End Technology

Suppose we have a sorted array of literals like this −

const arr = [2, 2, 3, 3, 3, 5, 5, 6, 7, 8, 9];

We are required to write a JavaScript function that takes in one such array and returns the first number that appears only once in the array.

If there is no such number in the array, we should return false.

For this array, the output should be 6.

Example

The code for this will be −

const arr = [2, 2, 3, 3, 3, 5, 5, 6, 7, 8, 9];

const firstNonDuplicate = arr => {
   let appeared = false;
   for(let i = 0; i < arr.length; i++){
      if(appeared){
         if(arr[i+1] !== arr[i]){
            appeared = false;
         };
      }else{
         if(arr[i+1] === arr[i]){
            appeared = true;
            continue;
         };
         return arr[i];
      };
   };
   return false;
};
console.log(firstNonDuplicate(arr));

Output

Following is the output on console −

6
raja
Published on 10-Oct-2020 07:34:26
Advertisements