1st round, 311 Sparse Matrix Multiplication
来源:互联网 发布:电子商务网络环境 编辑:程序博客网 时间:2024/06/06 13:24
public class Solution { public int[][] multiply(int[][] A, int[][] B) { int m = A.length; int n = A[0].length; int p = B[0].length; int[][] result = new int[m][p]; for(int i=0; i<m; i++){ for(int j=0; j<n; j++){ if(A[i][j]!=0){ for(int k=0; k<p; k++){ if(B[j][k]!=0) result[i][k]+=A[i][j]*B[j][k]; } } } } return result; } // 最直接的方法,就是按照矩阵的原始算法来求解。。。还是3层循环,先定了i,j层,也就是result[i][j]的位置,然后把k从0到A[0].length遍历一遍,相乘各项,在相加。。。这里我只是check了一下两项是否为0,只有都不为0,才相乘再相加。。。但对于时间复杂度的影响不大。还是N的三次方。。。 // 方法也可以通过,但是非常慢,5%,然后看到一个大大的波峰在前面。。。 //int[] default= new int[0]; !!! 不能把initiate一个 0大小的数组!!!特别是在要return int[][]的时候要注意。。 //if(A==null || B==null || A.length==0 || A[0].length==0 || B.length==0 || B[0].length==0 ) return default; /* int m=A.length; int n=A[0].length; int p=B[0].length; int[][] result= new int[m][p]; for(int i=0; i<m; i++){ for(int j=0; j<p; j++){ int tmp=0; for(int k=0; k<n; k++){ if(A[i][k]!=0 && B[k][j]!=0) tmp+= A[i][k]*B[k][j]; } result[i][j]=tmp; } } return result;*/ }
0 0
- 1st round, 311 Sparse Matrix Multiplication
- [leetcode 311] Sparse Matrix Multiplication
- Medium 311题 Sparse Matrix Multiplication
- [LeetCode311]Sparse Matrix Multiplication
- Leetcode: Sparse Matrix Multiplication
- Sparse Matrix Multiplication
- Sparse Matrix Multiplication
- Leetcode Sparse Matrix Multiplication
- Sparse Matrix Multiplication
- Sparse Matrix Multiplication
- Sparse Matrix Multiplication
- Sparse Matrix Multiplication
- 311. Sparse Matrix Multiplication
- 311. Sparse Matrix Multiplication
- LeetCode 311. Sparse Matrix Multiplication
- Leetcode 311. Sparse Matrix Multiplication
- LeetCode 311. Sparse Matrix Multiplication
- [leetcode] 311. Sparse Matrix Multiplication 解题报告
- Laravel-Blade模板引擎
- Laravel-Blade模板引擎-2.基础语法及include的使用
- Laravel-Blade模板引擎-3.流程控制
- Laravel-Blade模板引擎-4. 模板中的URL
- 数组、List和ArrayList的区别
- 1st round, 311 Sparse Matrix Multiplication
- 使用iostat和LLD实现zabbix监控IO性能
- 自定义vimrc
- 第二期 QEMU模拟vexpress-a9开发板 《虚拟机就是开发板》
- Swift入门基础知识大家分享
- Map接口
- VT-x is disabled in the BIOS android开发遇到的第一个问题 vts BIOS设置
- unity
- 11111111111