LeetCode in Kotlin

867. Transpose Matrix

Easy

Given a 2D integer array matrix, return the transpose of matrix.

The transpose of a matrix is the matrix flipped over its main diagonal, switching the matrix’s row and column indices.

Example 1:

Input: matrix = [[1,2,3],[4,5,6],[7,8,9]]

Output: [[1,4,7],[2,5,8],[3,6,9]]

Example 2:

Input: matrix = [[1,2,3],[4,5,6]]

Output: [[1,4],[2,5],[3,6]]

Constraints:

Solution

class Solution {
    fun transpose(input: Array<IntArray>): Array<IntArray> {
        val output = Array(input[0].size) {
            IntArray(
                input.size,
            )
        }
        var i = 0
        var b = 0
        while (i < input.size) {
            var j = 0
            var a = 0
            while (j < input[0].size) {
                output[a][b] = input[i][j]
                j++
                a++
            }
            i++
            b++
        }
        return output
    }
}