数学问题——矩阵和矩阵快速幂

Posted 牧空

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数学问题——矩阵和矩阵快速幂相关的知识,希望对你有一定的参考价值。

方法

  • 使用二维数组存储矩阵
  • 矩阵的基础操作有相加,相乘,转置
  • 矩阵的幂以乘法为基础操作,矩阵快速幂的基础思想和普通快速幂相同,只不过初始量不是1,是单位矩阵

代码

相加和转置都非常简单,在此展示较为常用乘法

#define MAX 10
struct Matirx{
	int matrix[10][10];
	int col, row;
	Matrix(int c, int r):col(c),row(r) {};
}

Matrix Multiply(Matrix x, Matirx y){
	Matrix res(x.row, t,col);
	for(int i = 0; i < res.row; i++){
		for(int j = 0; j < res.col; j++){
			res.matrix[i][j] = 0;
			for(int k = 0; k < x.col; k++){
				res.matrix[i][j] += x.matrix[i][k] * y.matrix[k][j];
			}
		}
	}
	return res;
}

以上是关于数学问题——矩阵和矩阵快速幂的主要内容,如果未能解决你的问题,请参考以下文章