654. Sparse Matrix Multiplication

Description

Given two Sparse Matrix A and B, return the result of AB.

You may assume that A's column number is equal to B's row number.

Example

Example1

Input:

[[1,0,0],[-1,0,3]]

[[7,0,0],[0,0,0],[0,0,1]]

Output:

[[7,0,0],[-7,0,3]]

Explanation:

A = [

  [ 1, 0, 0],

  [-1, 0, 3]

]

B = [

  [ 7, 0, 0 ],

  [ 0, 0, 0 ],

  [ 0, 0, 1 ]

]

    |  1 0 0 |  | 7 0 0 |  |  7 0 0 |

AB = | -1 0 3 | x | 0 0 0 | = | -7 0 3 |

                  | 0 0 1 |

Example2

Input:

[[1,0],[0,1]]

[[0,1],[1,0]]

Output:

[[0,1],[1,0]]

思路:

第一种直接按照矩阵乘法的规则计算,时间复杂度是三层循环乘起来,第二种呢从A矩阵出发,跳过为0的元素按列循环,时间复杂度会少一部分为0的元素的。

代码:


©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 专业考题类型管理运行工作负责人一般作业考题内容选项A选项B选项C选项D选项E选项F正确答案 变电单选GYSZ本规程...
    小白兔去钓鱼阅读 9,051评论 0 13
  • pyspark.sql模块 模块上下文 Spark SQL和DataFrames的重要类: pyspark.sql...
    mpro阅读 9,503评论 0 13
  • 超高速音视频编码器用法: ffmpeg [options] [[infile options] -i infile...
    吉凶以情迁阅读 4,648评论 0 4
  • 在C语言中,五种基本数据类型存储空间长度的排列顺序是: A)char B)char=int<=float C)ch...
    夏天再来阅读 3,392评论 0 2
  • 我们讲科学创新,科学进步,每一步其实都是戕害,这些我们不再重复.我现在只谈一个问题,科学技术对人类造成的可怕危局,...
    姜地主阅读 827评论 3 13