谷歌面试:实现两个N*N矩阵的乘法,矩阵由一维数组表示
2012-10-08 21:57
330 查看
这个题主要是弄清楚那一部分是行,哪一部分是列就可以了。
代码使用了三个变量来实现不同行和列的递增。
行和列相乘的函数,如下:
结果如下:
代码使用了三个变量来实现不同行和列的递增。
行和列相乘的函数,如下:
#define size 2 int * multi(int* a, int* b, int N) { int i,j,k,temp; int * c = (int *)malloc(N*N); for(i=0;i<N;i++) { for(j=0;j<N;j++) { temp = i*N + j; *(c+temp) = 0; for(k=0;k<N;k++) { *(c+temp) += a[i*N + k]*b[k*N + j]; } printf("%d ",*(c+temp)); } } return c; }main函数如下:
void main() { int a[size*size] = {2,1,4,3}; int b[size*size] = {1,-1,3,2}; multi(a,b,size); printf("\n"); }
结果如下:
相关文章推荐
- 实现两个N×N矩阵的乘法,矩阵由一维数组表示
- 实现两个N*N矩阵的乘法,矩阵由一维数组表示
- 实现两个N*N矩阵的乘法,矩阵由一维数组表示
- 实现两个N*N矩阵的乘法,矩阵由一维数组表示
- <google面试题>实现两个N*N矩阵的乘法,矩阵由一维数组表示
- C#实现两个N*N矩阵的乘法,矩阵必须由一维数组表示
- 实现两个N*N矩阵的乘法,矩阵由一维数组表示
- 实现两个N*N矩阵的乘法,矩阵由一维数组表示
- 实现两个N*N矩阵的乘法,矩阵由一维数组表示
- 实现两个N*N矩阵的乘法,矩阵由一维数组表示
- 实现两个N*N矩阵的乘法 矩阵用一维数组表示
- 实现两个N*N矩阵的乘法,矩阵由一维数组表示
- 实现两个N*N矩阵的乘法,矩阵由一维数组表示
- 面试题:实现两个N*N矩阵的乘法,矩阵由一维数组表示
- 实现两个N*N矩阵的乘法,矩阵由一维数组表示
- 两个N*N矩阵的乘法,矩阵由一维数组表示
- 实现N*N矩阵的乘法,矩阵有一维数组表示
- 现两个N*N矩阵的乘法,矩阵由一维数组表示
- 矩阵乘法的实现-将2维数组作函数的参数
- 6.33③ 假定用两个一维数组L[1..n]和R[1..n]作为 有n个结点的二叉树的存储结构, L[i]和R[i]分别指 示结点i的左孩子和右孩子,0表示空。试写一个算法 判别结点u是否为结点v的