程序笔记   发布时间:2022-07-04  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了稀疏数组大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

二维数组

第一行存的是原数组的行数列数,有效值个数,下面的存放每一个有效值的行纵坐标以及值

稀疏数组

 

 

//创建一个稀疏数组,稀疏数组的意义在于,数组中有大量数字相同的情况下,存储有效数据//创建一个新的稀疏数组,
/** * 二维数组本质上,可以理解为 是两个数组进行嵌套 * */int[][] array=new int[11][11];array[2][3]=2;array[1][3]=2;// 遍历数组for(int[] arr:array){    for (int i:arr){        System.out.print(i+"t");    }    System.out.println();}

稀疏数组

 

 

需要用双层for each循环遍历数组

转换稀疏数组之前,先获得数组中的有效数字sum

int sum=0;for (int i = 0; i < array.length; i++) {    for (int j = 0; j < array[i].length; j++) {        if (array[i][j]!=0){            sum+=1;        }    }}System.out.println("有效个数为:"+sum);

转换稀疏数组 array1,并遍历array1

int[][] array1=new int[sum+1][3];array1[0][0]=11;array1[0][1]=11;array1[0][2]=2;int total=0;for (int i = 0; i < array.length; i++) {    for (int j = 0; j < array[i].length; j++) {        if (array[i][j]!=0){            total++;            array1[total][0]=i;            array1[total][1]=j;            array1[total][2]=array[i][j];        }    }}for(int[] arr:array1){    for (int i:arr){        System.out.print(i+"t");    }    System.out.println();}

稀疏数组

 

 

并通过稀疏数组进行一个还原,并且遍历还原的数组,进行比对

稀疏数组

 

 

 

大佬总结

以上是大佬教程为你收集整理的稀疏数组全部内容,希望文章能够帮你解决稀疏数组所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: