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

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

Barbara Streisand
Barbara StreisandOriginal
2024-11-15 15:47:02495Durchsuche

How to Find the Most Frequent Element in an Array?

Bestimmen des Elements mit dem höchsten Vorkommen in einem Array

Das Bestimmen des am häufigsten vorkommenden Elements (Modus) in einem Array ist eine gängige Programmierung Aufgabe. Für ein gegebenes Array müssen wir das Element finden, das am häufigsten vorkommt.

Um dieses Problem elegant zu lösen, besteht ein Ansatz darin, eine Moduszuordnung zu verwenden. Die Moduszuordnung dient als Nachschlagetabelle, die jedem einzelnen Element im Array seine jeweilige Häufigkeit des Auftretens zuordnet. Indem wir das Array durchlaufen, behalten wir das aktuell höchste Vorkommen und das entsprechende Element bei.

Die folgende JavaScript-Lösung implementiert diesen Ansatz:

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

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

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

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

  return maxEl;
}

In dieser Lösung initialisieren wir die Moduszuordnung als ein leeres Objekt. Anschließend durchlaufen wir die Array-Elemente und erhöhen deren jeweilige Anzahl in der Moduszuordnung. Wir aktualisieren kontinuierlich das höchste Vorkommen und das entsprechende Element, indem wir das Element verfolgen, das am häufigsten vorkommt. Abschließend geben wir das Element mit dem höchsten Vorkommen als Modus zurück.

Das obige ist der detaillierte Inhalt vonWie finde ich das häufigste Element in einem Array?. 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