给定一个矩阵 A, 返回 A 的转置矩阵。

给定一个矩阵 A, 返回 A 的转置矩阵。

矩阵的转置是指将矩阵的主对角线翻转,交换矩阵的行索引与列索引。

 

示例 1:

输入:[[1,2,3],[4,5,6],[7,8,9]]
输出:[[1,4,7],[2,5,8],[3,6,9]]
示例 2:

输入:[[1,2,3],[4,5,6]]
输出:[[1,4],[2,5],[3,6]]

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/transpose-matrix
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

 

public class Solution {
    public int[][] Transpose(int[][] A) {
        if(A == null || A.Length == 0)
            {
                return null;
            }

            if (A[0] == null || A[0].Length == 0)
            {
                return null;
            }

            int[][] result = new int[A[0].Length][];

            for (int i = 0; i < A[0].Length; i++)
            {
                result[i] = new int[A.Length];
            }

            for (int i=0;i < A.Length;i++)
            {
                int[] rowData = A[i];
                
                if (rowData != null)
                {
                    for (int k = 0; k < rowData.Length; k++)
                    {
                        result[k][i] = rowData[k];
                    }
                }
            }
            return result;
    }
}

 

posted @ 2019-06-24 14:59  雨飞  阅读(954)  评论(0编辑  收藏  举报