Computer >> 컴퓨터 >  >> 프로그램 작성 >> JavaScript

JavaScript에서 배열의 고유하지 않은 첫 번째 요소 감지

<시간/>

배열에서 최소 두 번 나타나는 첫 번째 요소의 인덱스를 반환하는 함수를 작성해야 합니다. 요소가 두 번 이상 나타나지 않으면 -1을 반환해야 합니다. 일정한 공간에서 이 작업을 수행해야 합니다(예:추가 메모리를 사용하지 않음).

따라서 이 문제에 대한 솔루션을 작성해 보겠습니다.

for 루프를 사용하여 배열을 반복하고 Array.prototype.lastIndexOf() 메서드를 사용하여 중복 여부를 확인합니다.

이에 대한 코드는 -

const arr1 = [0, 1, 1, 2, 3, 4, 4, 5];
const firstRedundant = arr => {
   for(let i = 0; i < arr.length; i++){
      if(arr.lastIndexOf(arr[i]) !== i){
         return i;
      };
   };
   return -1;
}
console.log(firstRedundant(arr1)); // 1

출력

콘솔의 출력은 -

1