Syntax error Compute cartesian product of elements in an array in JavaScript

Compute cartesian product of elements in an array in JavaScript



Cartesian Product

The Cartesian product of two sets (arrays) A and B, denoted A × B, is the set (array) of all ordered pairs (a, b) where a is in A and b is in B.

In simpler terms, a cartesian product of two arrays is a permutation of all possible arrays of two elements whose first element belongs to the first array and the second element belongs to the second array.

For example − If the two arrays are −

const arr1 = [1, 2, 3];
const arr2 = [4, 5];

Then their cartesian product will be −

const product = [[1, 4], [1, 5], [2, 4], [2, 5], [3, 4], [3, 5]];

Example

The code for this will be −

const arr1 = [1, 2, 3];
const arr2 = [4, 5];
const cartesianProduct = (arr1, arr2) => {
   const res = [];
   for(let i = 0; i < arr1.length; i++){
      for(let j = 0; j < arr2.length; j++){
         res.push(
            [arr1[i]].concat(arr2[j])
         );
      };
   };
   return res;
};
console.log(cartesianProduct(arr1, arr2));

Output

And the output in the console will be −

[ [ 1, 4 ], [ 1, 5 ], [ 2, 4 ], [ 2, 5 ], [ 3, 4 ], [ 3, 5 ] ]
Updated on: 2020-11-21T10:07:40+05:30

1K+ Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements