矩阵乘以矩阵的转置(数组形式表示矩阵)
日期: 2018-09-10 分类: 个人收藏 406次阅读
#include <iostream>
using namespace std;
int **fun(int init,int rows, int column){
int **A;
int **_A;
int **result;
A = (int**)malloc(rows*sizeof(int*));
for (int i = 0; i < rows; i++){
A[i] = (int*)malloc(column*sizeof(int));
}
_A = (int**)malloc(column*sizeof(int*));
for (int i = 0; i < column; i++){
_A[i] = (int*)malloc(rows*sizeof(int));
}
result = (int**)malloc(rows*sizeof(int*));
for (int i = 0; i < rows; i++){
result[i] = (int*)malloc(rows*sizeof(int));
}
for (int i = 0; i < rows; i++){
for (int j = 0; j < column; j++){
A[i][j] = init++;
}
}
for (int i = 0; i < column; i++){
for (int j = 0; j < rows; j++){
_A[i][j] = A[j][i];
}
}
for (int i = 0; i < rows; i++){
for (int j = 0; j < rows; j++){
result[i][j] = 0;
for (int k = 0; k < column; k++){
result[i][j] += A[i][k]* _A[k][j];
}
}
}
return result;
}
int main()
{
int **matrix_result;
matrix_result = fun(1, 3, 3);
for (int i = 0; i < 3; i++){
for (int j = 0; j < 3; j++){
cout << matrix_result[i][j] << " ";
}
cout << endl;
}
return 0;
}
除特别声明,本站所有文章均为原创,如需转载请以超级链接形式注明出处:SmartCat's Blog
标签:C++ 算法 数据结构
精华推荐