矩阵压缩

来源:互联网 发布:商城系统数据库设计 编辑:程序博客网 时间:2024/05/24 01:45

我们可以通过压缩矩阵来节省资源

//矩阵压缩算法//将矩阵压缩成另一个矩阵//另一个矩阵第一行存储了之前矩阵的行数 列数 以及非0元素个数//然后每一行都保存了非0元素的行数 列数 及元素值public class Main {public static void main(String [] args){int[][] data={{0,0,0,0,0,0},{0,0,0,0,0,0},{0,4,0,0,0,0},{0,9,0,0,0,0},{0,0,0,0,0,0},};int comparessdata[][]=new int[10][3];for(int i=0;i<5;i++){for(int j=0;j<6;j++){System.out.print(data[i][j]+" ");}System.out.print("\n");}int index=0;for(int i=0;i<5;i++){for(int j=0;j<6;j++){if(data[i][j]!=0){//如果元素非0,总非0元素个数+1index++;//存储行数comparessdata[index][0]=i;//存储列数comparessdata[index][1]=j+1;//存储具体元素值comparessdata[index][2]=data[i][j];}comparessdata[0][0]=5;comparessdata[0][1]=6;//存储非0元素总值comparessdata[0][2]=index;}}for(int i=0;i<index+1;i++){for(int j=0;j<3;j++){System.out.print(comparessdata[i][j]+"");}System.out.print("\n");}}}

这样就压缩了,然后没了,睡觉!!!