Java 程序转置矩阵

编写一个Java程序,通过示例转置矩阵,或在给定的多维数组中将行转换为列。在这里,转置意味着将行转换为列,将列转换为行。 

使用for循环进行Java程序矩阵转置

在此示例中,我们声明了一个具有随机值的 3 * 3 org_arr 整数数组,以及另一个用于存储转置矩阵的数组。接下来,我们使用 for 循环迭代 org_arr 的项。在嵌套的for 循环中,我们将 org_arr 的行分配给了 tras_arr 的列。

public class Example {
	public static void main(String[] args) {
		
		int i, j;	
		
		int[][] org_arr = {{15, 25, 35}, {45, 55, 65}, {75, 85, 95}};
		int[][] trans_arr = new int[3][3];
		

		for(i = 0; i < org_arr.length ; i++)
		{
			for(j = 0; j < org_arr[0].length; j++)
			{
				trans_arr[j][i] = org_arr[i][j];
			}
		}
		
		System.out.println("\nOriginal Items are :");
		for(i = 0; i < org_arr.length ; i++)
		{
			for(j = 0; j < org_arr[0].length; j++)
			{
				System.out.format("%d \t", org_arr[i][j]);
			}
			System.out.print("\n");
		}
		
		System.out.println("\nAfter Transposing Items are :");
		for(i = 0; i < trans_arr.length ; i++)
		{
			for(j = 0; j < trans_arr[0].length; j++)
			{
				System.out.format("%d \t", trans_arr[i][j]);
			}
			System.out.print("\n");
		}
	}
}
Original Items are :
15 	25 	35 	
45 	55 	65 	
75 	85 	95 	

After Transposing Items are :
15 	45 	75 	
25 	55 	85 	
35 	65 	95 	

Java代码与上方相同。但是,此矩阵代码允许用户输入行数、列数和项数。

import java.util.Scanner;

public class TransposeMatrix {
	
	private static Scanner sc;
	
	public static void main(String[] args) {
		
		int i, j, rows, columns;
		
		sc= new Scanner(System.in);
		
		System.out.println("\n Enter Rows and Columns :  ");
		rows = sc.nextInt();
		columns = sc.nextInt();
		
		int[][] org_arr = new int[rows][columns];
		int[][] trans_arr = new int[rows][columns];
		
		System.out.println("\n Please Enter the Items :  ");
		for(i = 0; i < rows; i++) {
			for(j = 0; j < columns; j++) {
				org_arr[i][j] = sc.nextInt();
			}		
		}

		for(i = 0; i < org_arr.length ; i++)
		{
			for(j = 0; j < org_arr[0].length; j++)
			{
				trans_arr[j][i] = org_arr[i][j];
			}
		}
		
		System.out.println("\nAfter Transposing Matrix Items are :");
		for(i = 0; i < trans_arr.length ; i++)
		{
			for(j = 0; j < trans_arr[0].length; j++)
			{
				System.out.format("%d \t", trans_arr[i][j]);
			}
			System.out.print("\n");
		}
	}
}
Program to Transpose Matrix