Java-программа для поиска транспонирования матрицы | Транспонирование матрицы

Вот программа на Java для поиска транспонирования матрицы:

import java.util.Scanner;
public class TransposeMatrix {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.print("Enter the number of rows in the matrix: ");
        int rows = scanner.nextInt();
        System.out.print("Enter the number of columns in the matrix: ");
        int columns = scanner.nextInt();
        int[][] matrix = new int[rows][columns];
        System.out.println("Enter the elements of the matrix:");
        for (int i = 0; i < rows; i++) {
            for (int j = 0; j < columns; j++) {
                matrix[i][j] = scanner.nextInt();
            }
        }
        System.out.println("The original matrix is:");
        displayMatrix(matrix);
        int[][] transposeMatrix = transpose(matrix);
        System.out.println("The transpose of the matrix is:");
        displayMatrix(transposeMatrix);
    }
    public static int[][] transpose(int[][] matrix) {
        int rows = matrix.length;
        int columns = matrix[0].length;
        int[][] transposeMatrix = new int[columns][rows];
        for (int i = 0; i < rows; i++) {
            for (int j = 0; j < columns; j++) {
                transposeMatrix[j][i] = matrix[i][j];
            }
        }
        return transposeMatrix;
    }
    public static void displayMatrix(int[][] matrix) {
        int rows = matrix.length;
        int columns = matrix[0].length;
        for (int i = 0; i < rows; i++) {
            for (int j = 0; j < columns; j++) {
                System.out.print(matrix[i][j] + " ");
            }
            System.out.println();
        }
    }
}

Эта программа позволяет пользователю вводить количество строк и столбцов матрицы, а затем принимает входные данные для элементов матрицы. Затем он вычисляет транспонирование матрицы с помощью метода transpose()и отображает исходную матрицу и матрицу транспонирования с помощью метода displayMatrix().

Вот несколько дополнительных методов нахождения транспонирования матрицы:

  1. Использование вложенных циклов: это наиболее распространенный метод, как показано в программе выше.
  2. Использование временной матрицы: создайте новую матрицу с обратными размерами и скопируйте элементы из исходной матрицы в транспонированную матрицу.
  3. Транспонирование на месте: поменяйте местами элементы матрицы на месте, без использования дополнительной матрицы. Этот метод эффективен для больших матриц.