懂了老师 ,两个数组必须要满足以下条件,才可以进行计算。
1. 维度上,从右往左进行匹配;在同一维度上,要么两个数组的长度相同,要么其中一个为1
如:(3,1,8) 和 (4,1)
第一个数组的8和第二个数组的1对应,为同一维度;第一个数组的1和第二个数组的4对应,为同一维度。他们同一维度的长度不同,但其中一个都为1。
2. 两个数组都以对应相同维度最长长度为基准进行拓展对齐(广播);有些维度为0长度的,先将长度变成1,再进行拓展对齐(广播)
如:(3,1,8) 和 (4,1)
第二个数组缺少一个维度,先补成1,即:(1,4,1), 再按照相同维度上最长长度为基准进行拓展,即:第一个数组:(3, 1, 8) - > (3, 4, 8), 第二个数组:(4, 1) - > (1, 4, 1) - > (3, 4, 8)