} //遍歷二位陣列得到非零個數
int sum=0;
for(int i=0;i
}}
//建立對應的稀疏陣列
int b=new int[sum+1][3];
//給稀疏陣列賦值
b[0][0]=11;
b[0][1]=11;
b[0][2]=sum;
//遍歷二維陣列,將非零的值存到稀疏陣列中
int ant=0;//記錄是第幾個非零資料
for(int i=0;i
}}
//輸出稀疏陣列的形式
system.out.println();
system.out.println("稀疏陣列為~~~");
for(int i=0;i
system.out.println();
//將稀疏陣列-》原始二維陣列
//先讀稀疏陣列的第一行,根據第一行的資料,建立原始的二維陣列
int k=new int[b[0][0]][b[0][1]];
//讀取稀疏陣列後幾行也就是第二行開始,賦值原始的二維陣列即可
for(int i=1;i
//輸出恢復後的二維陣列
system.out.println();
system.out.println("恢復後的二維陣列~~~");
for(int row:k)
system.out.println();
} }}
二維陣列與稀疏陣列之間的轉化
1.稀疏陣列介紹 如果原陣列的非0元素的個數有n個,則稀疏陣列有n 1行,列數不變,一共有三列 第一行儲存的資料 原始陣列的行 原始陣列儲存的列 原始陣列中非0的元素個數 第二行儲存的資料 第乙個非0元素所在的行 第乙個非0元素所在的列 第乙個非0元素的值 2.二維陣列轉化為稀疏陣列 遍歷二維陣列,...
二維陣列與稀疏陣列
一維數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 二維陣列遍歷 迴圈每次取出二維陣列中的...