矩阵相乘算法python,python中矩阵乘法的代码

  矩阵相乘算法python,python中矩阵乘法的代码

  形容

  矩阵乘法的计算与矩阵乘法的阶数密切相关。

  例如:

  a是5010的矩阵,B是1020的矩阵,C是205的矩阵。

  计算ABC有两种顺序:((AB)C)或(A(BC))。前者需要计算15000次乘法,后者只需要3500次。

  写一个程序,计算不同计算顺序所需的乘法次数。

  本主题包含多组样本输入!

  输入描述:

  输入多行。首先输入要相乘的矩阵个数n,每个矩阵的行数和列数,总数为2n。最后,输入要计算的规则。计算的规则是一个字符串,只由左右括号和大写字母( A~Z )组成。确保括号匹配,输入合法!输出描述:

  输出所需的乘法次数的示例1

  输入:

  50 1010 2020 5 (A (BC))输出:

  300分析:

  1.当矩阵A的列数等于矩阵B的行数时,A和B可以相乘。

  2.矩阵C的行数等于矩阵A的行数,C的列数等于b的列数。

  3.乘积C的行M和列N中的元素等于矩阵A的行M和矩阵B的列N中相应元素的乘积之和.

  代码实现如下:

  while True:try:n=int(input())arr=[]order=[]RES=0 for I in range(n):arr . append(list(map(int,input()。split())))F=input()#(A(B(C(D(E(F(GH))))))#((AB)C)for I in F:if I . isalpha():order . append(arr[ord(I)-65])elif I==) and len(order)=2:# print(order)B=order . pop()A=order . pop()# print(A,B)RES=A[1]* B[1]* A[0]order . append([A

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: