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

合計が0のJavaScriptを使用して元の配列のサブ配列を確認します


正の値と負の値を持つ数値の配列を受け取るJavaScript関数を作成する必要があります。元の配列に正味の合計が0であるサブ配列が存在するかどうかを判断する必要があります。

この関数は、これに基づいてブール値を返す必要があります。

アプローチ

ここでのアプローチは単純です。 forループを使用して配列を反復処理し、その特定の要素までの累積合計を計算します。また、累積が0になるか、以前に達成した値に達するポイントがある場合は、合計が0のサブアレイが存在します。それ以外の場合は、合計が0のサブアレイは存在しません。

したがって、この関数のコードを書いてみましょう-

const arr = [4, 2, -1, 5, -2, -1, -2, -1, 4, -1, 5, -2, 3];
const zeroSum = arr => {
   const map = new Map();
   let sum = 0;
   for(let i = 0; i < arr.length; i++){
      sum += arr[i];
      if(sum === 0 || map.get(sum)){
         return true;
      };
      map.set(sum, i);
   };
   return false;
};
console.log(zeroSum(arr));

出力

コンソールの出力は-

になります
true

  1. 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

  2. ユーザーが入力した文字列がJavaScriptの配列に含まれているかどうかを確認します

    ユーザーに文字列値を入力するための入力を提供するJavaScriptプログラムを作成する必要があります。 次に、プログラムは入力値をハードコードされた配列値と照合する必要があります。入力文字列値が配列に含まれている場合、プログラムは画面にtrueを出力し、含まれていない場合はfalseを出力する必要があります。 例 このためのコードは-になります <!DOCTYPE html> <html> <head>    <meta charset="utf-8">    <meta n