I was asked to write the solution for this question with the following restrictions:
The function should return -1 in the case of no duplications.
Here is the solution:
function firstDuplicate(array) {
const arraySet = new Set();
for(const value of array) {
if(arraySet.has(value)) return value;
arraySet.add(value);
}
return -1;
}
Here is an example of results:
console.log(firstDuplicate([1,2,3,4,3,2,5])) // 3
console.log(firstDuplicate([1,2,3,4,6,7,8])) // -1
console.log(firstDuplicate([-2,2,3,5,0,-2])) // -2
comments powered by Disqus