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

JavaScriptで配列の中央値インデックスを見つける


問題

1次元空間内のさまざまな小惑星の位置を表す配列arrを取り込むJavaScript関数を作成する必要があります。

各小惑星について、絶対値はそのサイズを表し、符号はその方向を表します(正の意味は右、負の意味は左)。各小惑星は同じ速度で移動します。

私たちの機能は、すべての衝突後の小惑星の状態を見つけることになっています。 2つの小惑星が出会うと、小さい方の小惑星が爆発します。両方が同じサイズの場合、両方が爆発します。同じ方向に移動する2つの小惑星が出会うことはありません。

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

の場合

入力

const arr = [1, 7, 3, 6, 5, 6];

出力

const output = 3;

出力の説明

インデックス3の左側の数値の合計(nums [3] =6)は、インデックス3の右側の数値の合計に等しくなります。

また、3はこれが発生する最初のインデックスです。

以下はコードです-

const arr = [1, 7, 3, 6, 5, 6];
const medianIndex = (arr = []) => {
   let sum = arr.reduce((acc, num) => acc + num, 0)
   let currentSum = 0
   for (let i = 0; i < arr.length; i++) {
      currentSum += (arr[i - 1] || 0)
      sum -= arr[i]
      if (currentSum === sum) {
         return i
      }
   }
   return -1
}
console.log(medianIndex(arr));

出力

3

  1. JavaScriptの基本的な配列メソッド

    いくつかの基本的なJavaScript配列メソッドは次のとおりです- メソッド 説明 Array.push() 配列の最後に要素を追加します。 Array.pop() 配列の最後から要素を削除します。 Array.unshift() 配列の先頭に要素を追加するには Array.shift() 配列の前面から要素を削除します。 Array.splice() スプライスに要素を追加または削除するには 以下は、基本的な配列メソッドのコードです- 例 <!DOCTYPE html> <html lang="en

  2. 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> <style> &nbs