Array ist sortiert

Beginner

This tutorial is from open-source community. Access the source code

Einführung

In diesem Lab werden wir die isSorted-Funktion in JavaScript verwenden, um zu bestimmen, ob ein numerisches Array aufsteigend oder absteigend sortiert ist. Wir werden die Math.sign()-Methode verwenden, um den endgültigen Richtungs-Wert in -1 für absteigende Reihenfolge und 1 für aufsteigende Reihenfolge umzuwandeln. Wir werden auch Fälle behandeln, in denen das Array leer ist, nur ein Element enthält oder die Richtung für jedes Paar benachbarter Array-Elemente sich ändert.

Codeübung: Überprüfen, ob ein Array sortiert ist

Um die Programmierung zu üben, öffnen Sie das Terminal/SSH und geben Sie node ein.

Hier ist eine Funktion, um zu überprüfen, ob ein numerisches Array sortiert ist:

const isSorted = (arr) => {
  if (arr.length <= 1) return 0;
  const direction = arr[1] - arr[0];
  for (let i = 2; i < arr.length; i++) {
    if ((arr[i] - arr[i - 1]) * direction < 0) return 0;
  }
  return Math.sign(direction);
};

Um sie zu verwenden, übergeben Sie einem Array von Zahlen isSorted(). Die Funktion gibt 1 zurück, wenn das Array aufsteigend sortiert ist, -1, wenn es absteigend sortiert ist, und 0, wenn es nicht sortiert ist.

Hier sind einige Beispiele:

isSorted([0, 1, 2, 2]); // 1
isSorted([4, 3, 2]); // -1
isSorted([4, 3, 5]); // 0
isSorted([4]); // 0

Zusammenfassung

Herzlichen Glückwunsch! Sie haben das Array Is Sorted-Lab abgeschlossen. Sie können in LabEx weitere Labs üben, um Ihre Fähigkeiten zu verbessern.