JavaScriptで昇順配列をチェックする
整数のシーケンスを配列として指定し、配列から1つ以下の要素を削除することで、厳密に増加するシーケンスを取得できるかどうかを判断します。
注:シーケンスa0、a1、...、aは、a0
たとえば、シーケンス=[1、3、2、1]の場合、出力は-
になります。almostIncreasingSequence(sequence) = false.
この配列には、厳密に増加するシーケンスを取得するために削除できる要素は1つもありません。
シーケンス=[1、3、2]の場合、出力は-
になります。almostIncreasingSequence(sequence) = true.
配列から3を削除して、厳密に増加するシーケンス[1、2]を取得できます。または、2を削除して、厳密に増加するシーケンス[1、3]を取得することもできます。
例
このためのコードは-
になりますconst arr1 = [3, 5, 67, 98, 3]; const arr2 = [4, 3, 5, 67, 98, 3]; const almostIncreasingSequence = sequence => { let removed = 0; let i = 0; let prev = -Infinity; while(removed < 2 && i < sequence.length) { if(sequence[i] > prev) { prev = sequence[i]; }else{ prev = Math.min(prev, sequence[i]); removed++; } i++; } return removed < 2; }; console.log(almostIncreasingSequence(arr1)); console.log(almostIncreasingSequence(arr2));
出力
コンソールの出力は-
になりますtrue false
-
JavaScriptの配列のスプレッド演算子
Spread(…)構文を使用すると、0個以上の引数が期待される場所でiterablelike配列を展開できます。これにより、関数に配列としていくつかのパラメーターを渡すことができます。 以下は、JavaScriptで配列のスプレッド演算子を実装するためのコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width
-
JavaScriptで同様に配列の2乗をチェックする
問題 最初の引数と2番目の引数として、それぞれarr1とarr2の2つの数値配列を受け取るJavaScript関数を作成する必要があります。 arr2のすべての要素が、出現順序に関係なくarr1の要素の二乗である場合にのみ、関数はtrueを返す必要があります。 たとえば、関数への入力が-の場合 入力 const arr1 = [4, 1, 8, 5, 9]; const arr2 = [81, 1, 25, 16, 64]; 出力 const output = true; 例 以下はコードです- const arr1 = [4, 1, 8, 5, 9]; const arr2