アルゴリズム – 内積

問題説明

同じ長さを持つ整数配列a、bがパラメータとして与えられる時、aとbの内積を返すようにsolutionメソッドを作成してください。

※内積:a[0]*b[0] + a[1]*b[1] + ・・・・・・・・・+ a[n – 1]*b[n – 1]です(n:a、bの長さ)

条件

  • a、bの長さは1位上、1000以下です。
  • a、bの全ての数は-1000以上、1000以下です。

入出力の例

abresult
[1,2,3,4][-3,-1,0,2]3
[-1,0,1][1,0,-1]-2

解説

class Solution {
    public int solution(int[] a, int[] b) {
        int answer = 0;
        for (int i = 0; i < a.length; i++) {
            answer = a[i] * b[i] + answer;
        }

        return answer;
    }
}
  • answer:各インデックスの掛け算した結果を足算するので、足算結果を保存する変数です。
  • ループを回しながら内積を求めます。(0からaの長さまで)
    • a、bの長さは同じなので、bの長さでもオッケですね。

コメントを残す