JavaScriptを使用した配列内の山の最大長
山のサブシーケンス
次のプロパティが当てはまる場合、(arrの)サブアレイサブを山と呼びます-
-
sub.length> =3
-
sub [0] B [i + 1]> ...>のように、0
問題
最初で唯一の引数として、数値の配列arrを受け取るJavaScript関数を作成する必要があります。
この関数は、配列arrに存在する最大の山のサブシーケンスの長さを返すことになっています(存在する場合は0、それ以外の場合は0)。
たとえば、関数への入力が
入力
const arr = [3, 2, 5, 8, 4, 3, 6];
出力
const output = 5;
出力の説明
目的のサブアレイは-
であるため[2, 5, 8, 4, 3]
例
以下はコードです-
const arr = [3, 2, 5, 8, 4, 3, 6];
const mountainLength = (arr = []) => {
let max = 0
for(let left = 0; left < arr.length; left++) {
let right = left
while(arr[right] < arr[right + 1]) {
right++
}
const top = right
while(right > left && arr[right] > arr[right + 1]) {
right++
}
if(right > top && top > left) {
max = Math.max(max, right - left + 1)
left = right
left--
}
}
return max
}
console.log(mountainLength(arr)); 出力
5
-
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
-
JavaScriptオブジェクトの配列で配列のメソッドを使用していますか?
以下は、JavaScriptオブジェクトの配列で配列のメソッドを使用するためのコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> <styl