合計が0に最も近い配列の隣接要素-JavaScript
数値の配列を受け取り、合計が0に最も近い元の配列から2つの要素のサブ配列を返すJavaScript関数を作成する必要があります。
配列の長さが2未満の場合は、配列全体を返す必要があります。
例:入力配列が-
の場合const arr = [4, 4, 12, 3, 3, 1, 5, -4, 2, 2];
ここで、ペア[5、-4]の合計は1であり、配列の隣接する2つの要素に最も近い0であるため、[5、-4]
を返す必要があります。例
以下はコードです-
const arr = [4, 4, 12, 3, 3, 1, 5, -4, 2, 2]; const closestElements = (arr, sum) => { if(arr.length <= 2){ return arr; } const creds = arr.reduce((acc, val, ind) => { let { closest, startIndex } = acc; const next = arr[ind+1]; if(!next){ return acc; } const diff = Math.abs(sum - (val + next)); if(diff < closest){ startIndex = ind; closest = diff; }; return { startIndex, closest }; }, { closest: Infinity, startIndex: -1 }); const { startIndex: s } = creds; return [arr[s], arr[s+1]]; }; console.log(closestElements(arr, 1));
出力
以下はコンソールの出力です-
[5, -4]
-
JavaScriptで配列の要素を再配置する
問題 最初で唯一の引数として、数値の配列arrを受け取るJavaScript関数を作成する必要があります。 配列arrは、常に偶数の長さになります。 0 <=i
-
JavaScriptを使用した2次元配列の要素の交互の合計
問題 同じ数の行と列を含む数のmXnオーダーの2次元配列を受け取るJavaScript関数を作成する必要があります。 この配列の場合、関数は次の合計をカウントして返す必要があります- $ \ sum_ {i =1} ^ m \ sum_ {j =1} ^ n(-1)^ {i + j} a_ {ij} $ 例 以下はコードです- const arr = [ [4, 6, 3], [1, 8, 7], [2, 5, 9] ]; const alternateSum = (arr = []) => { &n