2015-10-15 118 views
-3

生成N维坐标的N个数组之间的数学运算的名称是什么?维数N的元素是数组的元素?例如,假设N = 2,[1,2] * [3,4] = [(1,2),(1,4),(2,3),(2,4)]。什么是操作*的名称?数学运算的名称

+0

它被称为笛卡尔产品。 – Rishav

+0

我相当肯定它是笛卡尔的产品 - https://en.wikipedia.org/wiki/Cartesian_product – Rishav

+0

Thx,你一直很有帮助,伙计们。 –

回答

0

笛卡尔积: A X B - 从集合A到集合B的所有有序对。 对于N集合(数组),它是n折叠笛卡尔乘积。请参阅此链接: https://en.wikipedia.org/wiki/Cartesian_product

+0

对于维基链接,Thx非常有帮助,此外,您是否知道在Matlab中对于给定N实现n重笛卡儿积。我已经尝试了N = 2的meshgrid,即meshgrid([ 1,2],[1,2]),结果是有效的,但是有可能找出将N作为输入参数并返回相应结果的函数? –

+0

我得到了答案,哈哈,基于在Matlab中的示例commad; [x1,x2,x3,x4,x5,x6] = ndgrid([ - 1 1]); r = [x1(:),x2(:),x3(:),x4(:),x5(:),x6(:)]; –

+0

@JDw我不知道Matlab,但你可以确定一个函数来获得所需的集合。假设你必须找到A X B X C,A有x个元素,B有y个元素,C有z个元素。 开始迭代B的每个元素,并且返回一个空集S,添加所有元组(b,c),使得b在B中,c在C中。在集合S中获得y * z元素。 现在您需要找出AXS,按照与BX C相同的方式进行操作。对于N组您可以同样做。总元素将是所有集合元素的产物。 –