Java教程

矩阵转置

本文主要是介绍矩阵转置,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
矩阵转置,很复杂嘛?为嘛我跟面试官说对于m×n的矩阵,定义一个n×m的矩阵,然后逐行拷贝新矩阵的列就搞定,有问题?有问题?为啥要问那么多次?
package hangxin;

public class Juzhenzhuanzhi {

    public static int[][]  matrixTranspose(int[][] arr) {
        int[][] arrResult = new int[arr[0].length][arr.length];
        for (int i = 0; i < arr.length; i++) {
            for (int j = 0; j < arr[i].length; j++) {
                arrResult[j][i] = arr[i][j];
            }
        }
        return arrResult;
    }


    public static void  print(int[][] arr) {
        for (int i = 0; i < arr.length; i++) {
            for (int j = 0; j < arr[i].length; j++) {
                System.out.print( arr[i][j] + " ");
            }
            System.out.println("");
        }
        System.out.println("");
    }

    public static void main(String[] args) {
        int[][] arr = {{1, 2, 3},{ 4, 5, 6}, {7, 8, 9}, {10, 11, 12}};
        print(arr);
        int[][] arr2 = matrixTranspose(arr);
        print(arr2);
    }
}

 

这篇关于矩阵转置的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!