Computer >> Máy Tính >  >> Lập trình >> Javascript

Cặp phần tử tương tự ở các chỉ số khác nhau trong JavaScript

Chúng tôi bắt buộc phải viết một hàm JavaScript lấy một mảng các số nguyên làm đối số đầu tiên và duy nhất.

Hàm được yêu cầu để đếm số lượng tất cả các cặp phần tử như vậy từ mảng có độ lớn tương đương nhưng có mặt ở các chỉ số khác nhau.

Ví dụ -

Nếu mảng đầu vào là -

const arr = [7, 9, 5, 7, 7, 5];

Sau đó, đầu ra phải là -

const output = 4;

vì các cặp mong muốn là [7, 7], [7, 7], [7, 7], [5, 5]

Ví dụ

Sau đây là mã -

const arr = [7, 9, 5, 7, 7, 5];
const equalPairCount = (arr = []) => {
   if(!arr?.length){
      return 0;
   };
   const map = {}
   let count = 0;
   arr.forEach((val) => {
      if (map[val]) {
         count += map[val];
      };
      map[val] = map[val] + 1 || 1;
   });
   return count;
};
console.log(equalPairCount(arr));

Đầu ra

Sau đây là đầu ra của bảng điều khiển -

4