1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75
| package com.Chen.study01;
import java.util.Arrays; import java.util.LinkedHashSet; import java.util.Scanner;
public class study1 {
public static void main(String[] args) { int[][] array1 = new int[11][11]; array1[1][2] = 1; array1[2][3] = 2;
System.out.println("原始的数组为:"); out_put(array1); int sum = 0; for (int i = 0; i < array1.length; i++) { for (int j = 0; j < array1.length; j++) { if (array1[i][j] != 0) sum++; } } System.out.println("有效值的个数为:"+sum);
int[][] array2 = new int[sum+1][3]; array2[0][0] = 11; array2[0][1] = 11; array2[0][2] = sum; int count = 0; for (int i = 0; i < array1.length; i++) { for (int j = 0; j < array1[i].length; j++) { if (array1[i][j]!=0){ count++; array2[count][0] = i; array2[count][1] = j; array2[count][2] = array1[i][j]; } } } System.out.println("稀疏数组为:"); out_put(array2);
int[][] array3 = new int[array2[0][1]][array2[0][1]];
for (int i = 1; i < array2.length; i++) { array3[array2[i][0]][array2[i][1]]=array2[i][2]; } System.out.println("还原的数组为:"); out_put(array3); } public static void out_put(int[][] args){ for (int[] ints : args) { for (int ints1 : ints) { System.out.print(ints1+"\t"); } System.out.println(); } }
}
|