ToB企服应用市场:ToB评测及商务社交产业平台
标题:
java稀疏数组
[打印本页]
作者:
一给
时间:
2022-8-24 21:02
标题:
java稀疏数组
稀疏组织
当一个数组中大部分元素为0,或者为同一个值的数组时,可以用稀疏数组来保存该数组
稀疏数组,记录一共有几行几列,有多少个不同值
把具有不同值的元素和行里了及值记录在一个小规模的数组中,从而缩小程序的规模!
我们定义一下原始数组:
原始数组如下:
0 0 3 0 0
0 0 0 0 4
0 0 0 5 0
0 0 6 0 0
0 0 0 0 0
复制代码
可以看出,这个数组大部分都是0,我们可以把这个数组转化为稀疏数组
稀疏数组第一行存放的分别是总行数,总列数和存放的数据总数
//因为数组的下标是从0开始的,所以可以看出,第一行的第三个数,用下标表示,实际上是数组[0][2]
5 5 4
0 2 3
1 4 4
2 3 5
3 2 6
复制代码
下面看一下如何实现这种稀疏数组,又是如何把稀疏数组还原成
代码示例:
[code]package com.ling.array;public class ArrayDemo11 { public static void main(String[] args) { int[][] array=new int[5][5]; array[0][2]=3; array[1][4]=4; array[2][3]=5; array[3][2]=6; System.out.println("原始数组如下:"); for (int[] ints : array) { for (int anInt : ints) { System.out.print(anInt+" "); } System.out.println(); } System.out.println("行"+"\t"+"列"+"\t"+"存放的数据"+"\t"); //稀疏数组第一行存放的分别是总行数,总列数和存放的数据总数// System.out.println(5+"\t"+5+"\t"+4);// System.out.println(1+"\t"+3+"\t"+3);// System.out.println(2+"\t"+5+"\t"+4);// System.out.println(3+"\t"+4+"\t"+5);// System.out.println(4+"\t"+3+"\t"+6); int sum=0; for (int i = 0; i
欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/)
Powered by Discuz! X3.4