题解|标量的矩阵乘法

标量的矩阵乘法

https://www.nowcoder.com/practice/819d8e49c8654fe4940284d4322b19f8?tpId=377&tags=&title=&difficulty=0&judgeStatus=0&rp=0&sourceUrl=%2Fexam%2Foj

标量乘以矩阵,就是将矩阵中的每一个元素都乘以该标量。

数学表达式为: 其中, 为结果矩阵, 为标量, 为原矩阵。具体计算为:

标准代码如下,要学会善用列表推导式简化代码编写

def scalar_multiply(matrix: List[List[Union[int, float]]], scalar: Union[int, float]) -> List[List[Union[int, float]]]:
    return [[element * scalar for element in row] for row in matrix]

除此之外,也可以使用python的广播机制进一步简化运算

def scalar_multiply(matrix: List[List[Union[int, float]]], scalar: Union[int, float]) -> List[List[Union[int, float]]]:
   import numpy as np
   return (np.array(matrix) * scalar).tolist()

需要注意的是,尽量利用广播等机制可以加快代码运行速度,纯手搓其实没有利用这些机制快

全部评论

相关推荐

点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务