Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> JavaScript

Tìm phần tử trùng lặp đầu tiên trong mảng - JavaScript


Giả sử chúng ta cần viết một hàm trả về chỉ số của phần tử đầu tiên xuất hiện ít nhất hai lần trong mảng. Nếu không có phần tử nào xuất hiện hơn một lần, trả về -1. Yêu cầu làm trong không gian hằng số (không dùng bộ nhớ phụ).

Do đó, hãy viết giải pháp. Chúng ta sẽ dùng vòng lặp for duyệt mảng và dùng phương thức Array.prototype.lastIndexOf() để kiểm tra trùng lặp.

Ví dụ

Dưới đây là đoạn code:

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

Kết quả

Đoạn code sẽ in ra console:

1