矩阵相信大家都知道,而且一些常见操作,如相乘,相加相信大家也不陌生,就以矩阵相乘为例,计算机的常规实现也就是三层for吗
long[][] sum = new long[n][m];
for (int i = 0; i < n; i++)
for (int j = 0; j < m; j++)
for (int k = 0; k < l; k++)
sum[i][j] += a[i][k] * b[k][j];
那么稀疏矩阵呢?
首先介绍一下稀疏矩阵,说白了,就是矩阵里大部分位置的值为0,只有少部分不为0,就像下面这个矩阵一样
在存储方面,如果安常规矩阵的存储方法,存在一个二维数组了,必定浪费大量空间,所以我们可以借助图论里的邻接表,以这种方式来存储稀疏矩阵,举个例子,上面的矩阵安邻接表的存储方法,即为
在JAVA中就是Map<Long, Map<Long, Long>> 的存储结构&#