はじめに
この実験では、JavaScript の isSorted
関数を使って、数値配列が昇順または降順にソートされているかどうかを判断します。降順の場合は最終的な方向値を -1
に、昇順の場合は 1
に変換するために Math.sign()
メソッドを使います。また、配列が空、要素が 1 つだけ、または隣接する配列要素の方向が変化する場合も処理します。
This tutorial is from open-source community. Access the source code
💡 このチュートリアルは英語版からAIによって翻訳されています。原文を確認するには、 ここをクリックしてください
この実験では、JavaScript の isSorted
関数を使って、数値配列が昇順または降順にソートされているかどうかを判断します。降順の場合は最終的な方向値を -1
に、昇順の場合は 1
に変換するために Math.sign()
メソッドを使います。また、配列が空、要素が 1 つだけ、または隣接する配列要素の方向が変化する場合も処理します。
コーディングの練習のために、ターミナル/SSH を開き、node
と入力します。
ここに、数値配列がソートされているかどうかを確認する関数があります。
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);
};
これを使用するには、数値の配列を isSorted()
に渡します。配列が昇順にソートされている場合は関数は 1
を返し、降順にソートされている場合は -1
を返し、ソートされていない場合は 0
を返します。
以下はいくつかの例です。
isSorted([0, 1, 2, 2]); // 1
isSorted([4, 3, 2]); // -1
isSorted([4, 3, 5]); // 0
isSorted([4]); // 0
おめでとうございます!あなたは「配列がソートされているかどうか」の実験を完了しました。あなたの技術を向上させるために、LabExでさらに多くの実験を練習することができます。