867. Transpose Matrix

LeetCode easy original: C# #array #csharp #easy #leetcode #matrix #string
선택한 UI 언어에 맞게 문제 텍스트를 러시아어에서 번역합니다. 코드는 변경하지 않습니다.

Дан двумерный 정수 배열 matrix, return его транспонированную матрицу.

Транспонированная матрица — это матрица, перевернутая относительно своей главной диагонали, при этом строки и столбцы меняются местами.

예제:

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

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

C# 해법

매칭됨/원본
public class Solution {
    public int[][] Transpose(int[][] A) {
        int R = A.Length, C = A[0].Length;
        int[][] ans = new int[C][];
        for (int c = 0; c < C; ++c) {
            ans[c] = new int[R];
            for (int r = 0; r < R; ++r)
                ans[c][r] = A[r][c];
        }
        return ans;
    }
}

C++ 해법

자동 초안, 제출 전 검토
#include <bits/stdc++.h>
using namespace std;

// Auto-generated C++ draft from the C# solution. Review containers, LINQ and helper types before submit.
class Solution {
public:
    public int[][] Transpose(int[][] A) {
        int R = A.size(), C = A[0].size();
        int[][] ans = new int[C][];
        for (int c = 0; c < C; ++c) {
            ans[c] = new int[R];
            for (int r = 0; r < R; ++r)
                ans[c][r] = A[r][c];
        }
        return ans;
    }
}

Java 해법

매칭됨/원본
class Solution {
    public int[][] transpose(int[][] A) {
        int R = A.length, C = A[0].length;
        int[][] ans = new int[C][R];
        for (int r = 0; r < R; ++r)
            for (int c = 0; c < C; ++c)
                ans[c][r] = A[r][c];
        return ans;
    }
}

Go 해법

매칭됨/원본
func transpose(A [][]int) [][]int {
    R, C := len(A), len(A[0])
    ans := make([][]int, C)
    for c := 0; c < C; c++ {
        ans[c] = make([]int, R)
        for r := 0; r < R; r++ {
            ans[c][r] = A[r][c]
        }
    }
    return ans
}

Algorithm

Инициализируйте новую матрицу ans с размерами C x R, где C — количество столбцов в исходной матрице, а R — количество строк.

Скопируйте каждую запись исходной матрицы в новую матрицу так, чтобы ans[c][r] = matrix[r][c].

return матрицу ans.

😎

Vacancies for this task

활성 채용 with overlapping task tags are 표시됨.

전체 채용
아직 활성 채용이 없습니다.