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

简介: 学习如何用JAVA实现稀疏数组向二维数组的转换!

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

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

2.jpg

话不多说直接上代码:

//将稀疏数组恢复成原始数组intchessArr2[][] =newint[sparseArr[0][0]][sparseArr[0][1]];
for(inti=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(intdata: row) {
System.out.printf("%d\t",data);
            }
System.out.println();
        }

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

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

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

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

2.再读稀疏数组的后几行数据并赋给原始的二维数组即可。



相关文章
|
1天前
|
存储 算法 搜索推荐
滚雪球学Java(27):从零开始学习数组:定义和初始化
【5月更文挑战第2天】🏆本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!
7 3
|
3天前
|
Java 索引
Java中数组详解
Java中数组详解
43 19
|
3天前
|
Java
解析java中的数组
解析java中的数组
10 3
|
4天前
|
存储 安全 Java
Java一分钟之-数组的创建与遍历
【5月更文挑战第8天】本文介绍了Java中数组的基本概念、创建与遍历方法,强调了类型匹配和数组越界问题。示例展示了如何创建整数数组并初始化元素,同时提供了避免数组越界的策略。对于遍历,文章提到了for循环和增强型for循环,并给出了防止错误的建议,如正确声明类型、初始化数组、安全索引操作及使用合适的数据结构。遵循这些指导可帮助开发者有效管理Java数组并减少错误。
17 0
|
13天前
|
存储 Java 索引
Java数组
Java数组
23 0
|
13天前
|
存储 算法 Java
【Java探索之旅】掌握数组操作,轻松应对编程挑战
【Java探索之旅】掌握数组操作,轻松应对编程挑战
11 0
|
13天前
|
存储 Java C语言
【Java探索之旅】基本类型与引用类型 数组的应用 二维数组
【Java探索之旅】基本类型与引用类型 数组的应用 二维数组
14 0
|
13天前
|
存储 机器学习/深度学习 Java
【Java探索之旅】数组使用 初探JVM内存布局
【Java探索之旅】数组使用 初探JVM内存布局
26 0
|
13天前
|
存储 Java 编译器
【Java探索之旅】数组概念与初始化指南:动静结合
【Java探索之旅】数组概念与初始化指南:动静结合
22 0
|
13天前
|
Java 索引
JAVA刷题之数组的总结和思路分享
JAVA刷题之数组的总结和思路分享