java生成稀疏数组与还原
2021/11/18 1:10:05
本文主要是介绍java生成稀疏数组与还原,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
主函数
public static void main(String[] args) { //稀疏数组 //行 列 有效个数 //行 列 数据 int [][] array1=new int[11][11]; array1[1][2]=1; array1[2][3]=2; array1[1][3]=1; array1[2][4]=2; System.out.println("原型"); arrays(array1); int[][] array2 = arraysX(array1); System.out.println("处理后的稀疏数组"); arrays(array2); System.out.println("还原"); int[][] array3 = arraysH(array2); arrays(array3); }
生成稀疏数组
//生成稀疏数组 public static int[][] arraysX(int[][] array) { //先得到有效个数 int number=0; for (int [] arrays: array) { for (int num:arrays) { if (num!=0) number++; } } //初始化稀疏数组 int [][] arrayX=new int[number+1][3]; //行 arrayX[0][0]=array.length; //列 arrayX[0][1]=array[0].length; //有效数据个数 arrayX[0][2]=number; //初始化行 int num=1; for (int i = 0; i <array.length ; i++) { for (int j = 0; j <array[i].length ; j++) { if(array[i][j]!=0) { arrayX[num][0]=i; arrayX[num][1]=j; arrayX[num][2]=array[i][j]; num++; } } } return arrayX; }
还原稀疏数组
//还原 public static int [][] arraysH(int[][] array) { //初始化 行 列 int [][] arrayY=new int[array[0][0]][array[0][1]]; //循环 有效数据 for (int i=1;i<=array[0][2];i++) { //在指定 行 列 装填数据 arrayY[array[i][0]][array[i][1]]=array[i][2]; } return arrayY; }
输出
//输出数组 public static void arrays(int[][] array) { for (int i = 0; i <array.length ; i++) { for (int j = 0; j <array[i].length ; j++) { System.out.print(array[i][j]+"\t"); } System.out.println(); } }
这篇关于java生成稀疏数组与还原的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-26消息中间件源码剖析教程
- 2024-11-26JAVA语音识别项目资料的收集与应用
- 2024-11-26Java语音识别项目资料:入门级教程与实战指南
- 2024-11-26SpringAI:Java 开发的智能新利器
- 2024-11-26Java云原生资料:新手入门教程与实战指南
- 2024-11-26JAVA云原生资料入门教程
- 2024-11-26Mybatis官方生成器资料详解与应用教程
- 2024-11-26Mybatis一级缓存资料详解与实战教程
- 2024-11-26Mybatis一级缓存资料详解:新手快速入门
- 2024-11-26SpringBoot3+JDK17搭建后端资料详尽教程