如何用JAVA实现稀疏数组向二维数组的转换

发布于:2023-01-15 ⋅ 阅读:(199) ⋅ 点赞:(0)

上篇博客我介绍了如何将二维数组转换成稀疏数组,本篇将介绍如何把这个过程返回去。

首先我们来看一下二维数组和稀疏数组的样子:

好了废话不多说直接上代码:

      //将稀疏数组恢复成原始数组
        int chessArr2[][] = new int[sparseArr[0][0]][sparseArr[0][1]];
        for(int i = 1;i<sparseArr.length;i++) {
        	chessArr2[sparseArr[i][0]][sparseArr[i][1]] = sparseArr[i][2];
        }
        //恢复后的二维数组
        System.out.println();
        System.out.println("恢复后的二维数组");
        for(int[] row : chessArr1) {
        	for(int data: row) {
        System.out.printf("%d\t",data);
        	}
        	System.out.println();
        }

这里我们创建了chessArr2[][]数组,该数组就是我们需要转换最终得到结果的数组。

好这里我们可以看到第一行代码把稀疏数组的[0][0]位置和[0][1]的数值恢复成原始数组的行数和列数,接着使用for循环将稀疏数组的非0数据赋给新的数组。 最后使用for增强循环遍历原始数组,输出结果!

总结:稀疏数组转二维数组思路:

1.先读稀疏数组第一行,根据第一行的数据创建原始的二维数组。

2.再读稀疏数组的后几行数据并赋给原始的二维数组即可。
————————————————
版权声明:本文为CSDN博主「令辰柒」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/m0_62426532/article/details/123800972


网站公告

今日签到

点亮在社区的每一天
去签到

热门文章