Javascript
 Computer >> コンピューター >  >> プログラミング >> Javascript

JavaScriptでソートされていない最短の配列の長さ


問題

最初で唯一の引数として、数値の配列arrを受け取るJavaScript関数を作成する必要があります。

この関数は、1つの連続サブアレイの長さを見つける必要があります このサブ配列のみを昇順で並べ替えると、配列全体も昇順で並べ替えられます。

たとえば、関数への入力が-

の場合
const arr = [3, 7, 5, 9, 11, 10, 16];

その場合、出力は-

になります。
const output = 5;

出力の説明

[7、5、9、11、10]を並べ替えると、配列全体が並べ替えられるためです。

以下はコードです-

const arr = [3, 7, 5, 9, 11, 10, 16];
const shortestLength = (arr = []) => {
   const sorted = [...arr].sort((a, b) => a - b)
   let start = 0
   let end = sorted.length - 1
   while (sorted[start] === arr[start] && start < arr.length) {
      start += 1
   }
   while (sorted[end] === arr[end] && end >= 0) {
      end -= 1
   }
   return end >= start ? end - start + 1 : 0
}
console.log(shortestLength(arr));

出力

以下はコンソール出力です-

5

  1. JavaScript配列長プロパティ

    Array lengthプロパティは、指定された配列に存在する要素の総数である配列の長さを設定または返します。 以下は、配列の長さプロパティ-のコードです。 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title&

  2. JavaScript-配列オブジェクトの長さ

    JavaScriptのlengthプロパティは、オブジェクトのサイズを返します。以下は、文字列および配列オブジェクトの長さのコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document