二維陣列和稀疏陣列互換

2021-10-07 15:52:35 字數 1383 閱讀 1148

public

class

sparearray

system.out.

println()

;}//將二維陣列轉變為稀疏陣列的思路

//1.先遍歷原始的二維陣列,得到非0資料的個數

int sum =0;

for(

int i =

0; i <

11; i++)}

}//2.建立對應的稀疏陣列

int sparearray[

]=newint

[sum +1]

[3];

//給稀疏陣列賦值

sparearray[0]

[0]=

11;sparearray[0]

[1]=

11;sparearray[0]

[2]= sum;

//遍歷二維陣列,將非0的值存放到sparearray中

int count =0;

//count用於記錄是第幾個非0 資料

for(

int i =

1; i <

11; i++)}

}//輸出稀疏陣列的形式

system.out.

println()

; system.out.

println

("得到的 稀疏陣列是: ");

for(

int i =

0; i < sparearray.length; i++

)//將稀疏陣列轉變成二維陣列

/** * 1.先讀取稀疏陣列的第一行,根據第一行的資料建立原始的二維陣列,

* 比如上面的chessarr2=int[11][11]

* 2.再讀取稀疏陣列後幾行的資料,並賦予原始的二維陣列即可。

*///1.先讀取稀疏陣列的第一行,根據第一行的資料建立原始的二維陣列,

int chessarry1 [

]=newint

[sparearray[0]

[0]]

[sparearray[0]

[1]]

;//2.在讀取稀疏陣列的後幾行資料(從第二行開始),並賦值給原始的二維陣列即可

for(

int i =

1; i < sparearray.length; i++

)//輸出恢復的二維陣列

system.out.

println

("輸出恢復後的二維陣列: ");

for(

int[

] row : chessarr)

system.out.

println()

;}}}

稀疏二維陣列

package com.atguigu.sparsearray public class sparsearray system.out.println 計算原始二維陣列裡面非0值的個數,並輸出 int sum 0 for int is chessarr system.out.println sum ...

二維陣列與稀疏陣列

一維數00組的集合,二維陣列可以由多個一維陣列構成 二維陣列的建立 int a 推薦使用 int a2 直接建立 int a new int x 可以不進行定義也可以定義 int a int a new int,二維陣列的迭代 int b1 newint for int i 0 i 實現 packa...

二維陣列與稀疏陣列

二維陣列 陣列中的每乙個元素又是乙個陣列 宣告int a public static void main string args 0 1 2 0 1 2 0 1 2 0 1 2 newint 3 建立乙個長度為3的二維陣列,其中每乙個一維陣列的值為空 null 二維陣列遍歷 迴圈每次取出二維陣列中的...