【问题标题】:Sum of multiplication of unequal vectors不等向量相乘之和
【发布时间】:2018-05-07 11:54:22
【问题描述】:

我有两个向量:

a = [1 2 3 4 5]
b = [1; 2]

a 中的每个元素都将乘以 b 中的每个元素。结果的总和就是最终的输出。即

a(1)*b(1)+a(1)*b(2)
a(2)*b(1)+a(2)*b(2)
a(3)*b(1)+a(2)*b(2)
a(4)*b(1)+a(4)*b(2)
a(5)*b(1)+a(5)*b(2)

代码应该仍然适用于大尺寸向量。没有for循环可以编码吗?

【问题讨论】:

    标签: matlab vectorization matrix-multiplication


    【解决方案1】:

    这是结合sum的普通矩阵乘法。

    sum((b * a).', 2)    %I'll prefer this since it uses one less transpose
    

    sum(a.' * b.', 2)
    

    【讨论】:

    • 或打高尔夫球的版本:sum(b*a).'
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-03-15
    • 2015-05-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多