当前位置: 移动技术网 > IT编程>开发语言>Java > 编写方法,使给定的一个二维数组(3×3)转置

编写方法,使给定的一个二维数组(3×3)转置

2020年07月03日  | 移动技术网IT编程  | 我要评论

例:
在这里插入图片描述

分析

要求定义一个方法类,进行转置操作。
首先要明白转置是什么意思。转置就是如上图所示,把一个方阵对角置换。明白了转置,接下来就简单了。

思路分析

矩阵实际上是一个二维数组,首先写出遍历二维数组的程序,在此基础上,考虑到转置其实只需要对下三角进行遍历即可,然后与角标相反的元素互换即可。

实战

public static void main(String[] args) 
	{
		//先定义一个4X4的矩阵(3X3也可)
		int[][] arr = {{1, 5, 9, 10}, {2, 6, 8, 50}, {3, 15, 4, 7}, {13, 5, 80, 6}};
		先遍历一次,输出结果,以便对比。
		for (int i = 0; i < arr.length; i++)
		{
			for (int j = 0; j < arr[i].length; j++)
			{
				System.out.print(arr[i][j] + "\t");
			}
			System.out.println();
		}
		System.out.println("===========================");
		//创建对象
		Amethod am = new Amethod();
		am.zz(arr);
	}
}

//定义方法
class Amethod
{
	int temp = 0;
	public void zz(int[][] arr){
		for (int i = 0; i < arr.length; i++)
		{
			for (int j = 0; j < i; j++)//这里j < i其实就是对矩阵下三角进行遍历
			{
				temp = arr[i][j];
				arr[i][j] = arr[j][i];
				arr[j][i] = temp;
			}
		}
		//输出转置后的矩阵
		for (int m = 0; m < arr.length; m++)
		{
			for (int n = 0; n < arr[m].length; n++)
			{
				System.out.print(arr[m][n] + "\t");
			}
			System.out.println();
		}
	}

结果

在这里插入图片描述

PS:每天坚持撸代码,总有一天会秃的

本文地址:https://blog.csdn.net/weixin_42262738/article/details/107071403

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网