Rumah > hujung hadapan web > tutorial js > Bagaimana untuk Mencari Elemen Paling Kerap dalam Array dalam JavaScript?

Bagaimana untuk Mencari Elemen Paling Kerap dalam Array dalam JavaScript?

DDD
Lepaskan: 2024-11-21 10:40:11
asal
465 orang telah melayarinya

How to Find the Most Frequent Element in an Array in JavaScript?

Mengenal pasti Elemen Paling Berlaku dalam Tatasusunan

Menentukan elemen dengan kejadian tertinggi, juga dikenali sebagai mod, dalam tatasusunan yang diberikan menimbulkan cabaran pengaturcaraan yang menarik. Mari kita mendalami pendekatan ringkas namun cekap yang mengira mod dalam tatasusunan JavaScript.

Tinjauan Keseluruhan Penyelesaian

Objektifnya adalah untuk membina pemetaan elemen kepada kejadian masing-masing dalam tatasusunan. Selepas itu, kami mengulangi pemetaan ini dan mengenal pasti elemen dengan kejadian maksimum, yang mewakili mod. Pendekatan ini memastikan kerumitan masa O(n), dengan n ialah panjang tatasusunan.

Pelaksanaan

Coretan kod di bawah merangkumi pendekatan ini:

function mode(array) {
  if (array.length === 0) return null;

  const modeMap = {};
  let maxEl = array[0];
  let maxCount = 1;

  for (let i = 0; i < array.length; i++) {
    const el = array[i];
    if (modeMap[el] === undefined) modeMap[el] = 1;
    else modeMap[el]++;

    if (modeMap[el] > maxCount) {
      maxEl = el;
      maxCount = modeMap[el];
    }
  }

  return maxEl;
}
Salin selepas log masuk

Penggunaan

Untuk menggunakan ini fungsi, cukup sediakan tatasusunan yang mengandungi unsur-unsur yang modnya ingin anda tentukan. Sebagai contoh, pertimbangkan perkara berikut:

const array = ['pear', 'apple', 'orange', 'apple'];
const result = mode(array); // 'apple'
Salin selepas log masuk

Dalam contoh ini, mod tatasusunan ialah 'epal' kerana ia muncul dua kali, iaitu kekerapan tertinggi antara elemen.

Atas ialah kandungan terperinci Bagaimana untuk Mencari Elemen Paling Kerap dalam Array dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan