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

Tìm các phần tử duy nhất (xuất hiện 1 lần) - JavaScript

Viết hàm nhận mảng, trả về mảng chứa các phần tử chỉ xuất hiện duy nhất 1 lần (loại bỏ hoàn toàn các phần tử trùng lặp).

Ví dụ

Mảng: [9, 5, 6, 8, 7, 7, 1, 1, 1, 1, 1, 9, 8]

Phần tử duy nhất: 5, 6 → [5, 6]

Giải pháp

Mã triển khai:

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

const findDistinct = arr => {
  const res = [];
  for (let i = 0; i < arr.length; i++) {
    if (arr.indexOf(arr[i]) === arr.lastIndexOf(arr[i])) {
      res.push(arr[i]);
    }
  }
  return res;
};

console.log(findDistinct(arr));

Kết quả

Đầu ra trong console:

[5, 6]

Tối ưu O(n): Dùng Map đếm tần suất, sau đó lọc count === 1.