Heim >Web-Frontend >js-Tutorial >Wie finde ich das häufigste Element in einem Array in JavaScript?

Wie finde ich das häufigste Element in einem Array in JavaScript?

DDD
DDDOriginal
2024-11-21 10:40:11443Durchsuche

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

Identifizieren des am häufigsten vorkommenden Elements in einem Array

Bestimmen des Elements mit dem höchsten Vorkommen, auch bekannt als Modus, in einem bestimmten Array stellt eine faszinierende Programmierherausforderung dar. Lassen Sie uns in einen prägnanten, aber effizienten Ansatz eintauchen, der den Modus in einem JavaScript-Array berechnet.

Lösungsübersicht

Das Ziel besteht darin, eine Zuordnung von Elementen zu ihren jeweiligen Vorkommen zu erstellen im Array. Anschließend durchlaufen wir diese Zuordnung und identifizieren das Element mit dem höchsten Vorkommen, das den Modus darstellt. Dieser Ansatz gewährleistet eine zeitliche Komplexität von O(n), wobei n die Länge des Arrays ist.

Implementierung

Der folgende Codeausschnitt verkörpert diesen Ansatz:

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;
}

Nutzung

Um diese Funktion zu nutzen, geben Sie einfach an ein Array, das die Elemente enthält, deren Modus Sie bestimmen möchten. Betrachten Sie zum Beispiel Folgendes:

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

In diesem Beispiel ist der Modus des Arrays „Apfel“, da es zweimal vorkommt, was die höchste Häufigkeit unter den Elementen darstellt.

Das obige ist der detaillierte Inhalt vonWie finde ich das häufigste Element in einem Array in JavaScript?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn