矩阵相乘入门,两个矩阵相乘
最普通的矩阵乘法是直接三个for循环直接计算而已,所以复杂度是O(n3)
#include<iostream>
using namespace std;
int main()
{
int i,j,k;
const int m=3,r=4,n=3;
int a[m][r],b[r][n],c[m][n]={0}; //之前别忘清0
cout<<"请输入a矩阵:"<<endl;
for(i=0;i<m;i++)
for(j=0;j<r;j++)
cin>>a[j];
cout<<"请输入b矩阵:"<<endl;
for(i=0;i<r;i++)
for(j=0;j<n;j++)
cin>>b[j];
cout<<"两矩阵的积为:"<<endl;
for(i=0;i<m;i++)
for(j=0;j<n;j++)
{for(k=0;k<r;k++)
c[j]=c[j]+a[k]*b[k][j];
cout<<c[j]<<" ";
if(j==n-1) cout<<endl;} //使用这个方法可输出矩阵格式
return 0;
}
先了解连那个简单的矩阵相乘,然后再来
大家首先要认识到这一点:任何一个整数N,都能用二进制来表示
例如:25 二进制表示为 11001
运用矩阵乘法快速幂,可以快速计算出矩阵B^(n-1),这样实现将时间复杂度降低到O(log n)
上面的例子矩阵为: 0 1 0 0 0
1 0 0 0 0
0 0 1 0 0
0 0 0 0 1
0 0 0 1 0
矩阵相乘入门,两个矩阵相乘相关推荐
- 6-2 编写Matrix类,使用二维数组实现矩阵,实现两个矩阵的乘法。 (30分) java pta
编写程序题, 根据要求编写一个Java类,补充到代码中. 定义Matrix(矩阵)类,使用二维数组实现矩阵,实现两个矩阵的乘法.要求如下: 4个变量:row(行数),column(列数), matri ...
- 矩阵乘法(两个矩阵相乘)
Description 给定两个矩阵$A$和$B$,你需要判断它们是否可以相乘,若可以请输出相乘后的矩阵. Input 第一行输入一个整数$T$,代表有$T$组测试数据. 每组数据第一行输入两个整数$ ...
- c语言实现两个矩阵相乘
#include<stdio.h> #include<stdlib.h> #define M 3int main(void) {int i,j,k,matrix1[M][M], ...
- matlab 判断两个矩阵是否相等
数学意义的相等 all(A(:) == B(:)) isequal(A, B) 但须注意的是:B = A,未必能保证 isequal(A, B)返回真,因为如果 A 中包含NaN,因为按照定义,NaN ...
- 用matlab判断两个球是否相交,判断两个矩阵相交
判断两个矩阵相交 最近在回顾hihocoder上自己做过的题,看到清理海报这道题目,http://hihocoder.com/problemset/problem/1273?sid=707390当初比 ...
- 使用指针数组实现这两个矩阵的相乘
/********************************************************************* 有一2*3的整数矩阵和一3*2的整数矩阵,请使用指针数组实 ...
- Java黑皮书课后题第8章:**8.6(代数:两个矩阵相乘)编写两个矩阵相乘的方法。编写一个测试程序,提示用户输入两个3*3的矩阵,然后显示它们的乘积
**8.6(代数:两个矩阵相乘)编写两个矩阵相乘的方法.编写一个测试程序,提示用户输入两个3*3的矩阵,然后显示它们的乘积 题目 题目描述与运行示例 破题 代码 题目 题目描述与运行示例 **8.6( ...
- 两个矩阵相乘的乘法次数_C ++程序将两个数字相乘而不使用乘法运算符
两个矩阵相乘的乘法次数 The problem is we have two integer numbers and find the multiplication of them without u ...
- 实现两个矩阵相乘(Java)
矩阵乘法(Java实现) 矩阵可以用二维数组来表示:比如arr[n][m],其中n表示矩阵的行数m代表矩阵的列数,根据矩阵相乘的特性,两个矩阵相乘生成的那个新矩阵的行列是第一个矩阵的行和第二个矩阵的列 ...
- 两个矩阵的相加和相乘
//两个矩阵相加和相乘 public class TestMatrixOperation { public static void main(String[] args) { int [][]matr ...
最新文章
- 3句话点评2020年看过的那些精彩的电影
- 如何更准确的理解面向对象编程中的对象
- Rust即将发布1.0版本,Go持续获得关注:如何在新生语言之间做出抉择
- 宝塔如何备份网站_学习织梦网站必需会的一件事:织梦网站数据备份
- 改变linux分区后grub修复,更改磁盘分区后修复GRUB启动
- elasticSearch6源码分析(2)模块化管理
- cubase怎么添加midi设备_Cubase教程丨20分钟快速上手Cubase(下)
- 【51单片机快速入门指南】2:GPIO LED与按键
- 红帽:IaaS与PaaS齐头并进
- python的ols_【量化工具】OLS在python中的四种实现方式
- C#.NET里面的多线程处理
- 计算机网络与应用在线作业,北航《计算机网络与应用》在线作业一15秋满分答案...
- 海南自贸区电信行业环境分析
- 用dxdiag命令show计算机系统配置
- ProGAN: Network Embedding via Proximity Generative Adversarial Network 论文笔记
- ms office excel2013教程 - randbetween函数与选择性粘贴
- 歹徒逃亡3——————刺杀行动
- RISC-V入门笔记(新手必看!)
- 开放式基金全景点评:净值全面攀升 关注老基金(ZZ)
- python网络爬虫--项目实战--scrapy爬取人人车(5)