Java 程序用于跨行交换矩阵中第一个和最后一个元素

javacampus interviewserver side programmingprogramming

在本文中,我们将了解如何跨行交换矩阵中第一个和最后一个元素。矩阵的元素按行和列排列。具有 m 行和 n 列的矩阵可称为 m × n 矩阵。

矩阵中的各个条目称为元素,可以用 a[i][j] 表示,这表明元素 a 存在于第 i 行和第 j 列。

下面是相同的演示 −

假设我们的输入是

矩阵定义为:
4 5 6 7
1 7 3 4
11 12 13 14
23 24 25 50

期望的输出将是

交换元素后的矩阵:
23 24 25 50
1 7 3 4
11 12 13 14
4 5 6 7

算法

步骤 1 - 开始
步骤 2 - 声明一个整数矩阵,即 input_matrix,以及一个整数值,即 matrix_length。
步骤 3 - 定义值。
步骤 4 - 使用多个 for 循环迭代矩阵的每个元素,并使用临时变量交换矩阵所需的元素。
步骤 5 - 显示结果
步骤 5 - 停止

示例 1

在这里,我们将所有操作都绑定在‘main’函数下。

public class MatrixSwap {
   public static void main(String args[]) {
      int input_matrix[][] = {
         { 4, 5, 6, 7 },
         { 1, 7, 3, 4 },
         { 11, 12, 13, 14 },
         { 23, 24, 25, 50 }
      };
      System.out.println("该矩阵定义为: ");
      for (int i = 0; i < input_matrix.length; i++) {
         for (int j = 0; j < input_matrix[0].length; j++)
            System.out.print(input_matrix[i][j] + " ");
         System.out.println();
      }
      int matrix_length = input_matrix.length;
      for (int i = 0; i < input_matrix[0].length; i++) {
         int temp = input_matrix[0][i];
         input_matrix[0][i] = input_matrix[matrix_length - 1][i];
         input_matrix[matrix_length - 1][i] = temp;
      }
      System.out.println("\n交换元素后的矩阵: ");
      for (int i = 0; i < matrix_length; i++) {
         for (int j = 0; j < input_matrix[0].length; j++)
            System.out.print(input_matrix[i][j] + " ");
         System.out.println();
      }
   }
}

输出

矩阵定义为:
4 5 6 7
1 7 3 4
11 12 13 14
23 24 25 50

交换元素后的矩阵:
23 24 25 50
1 7 3 4
11 12 13 14
4 5 6 7

示例 2

在这里,我们将操作封装成展现面向对象编程的函数。

public class MatrixSwap {
   static void swap(int input_matrix[][]) {
      int matrix_length = input_matrix.length;
      for (int i = 0; i < input_matrix[0].length; i++) {
         int temp = input_matrix[0][i];
         input_matrix[0][i] = input_matrix[matrix_length - 1][i];
         input_matrix[matrix_length - 1][i] = temp;
      }
      System.out.println("\n交换元素后的矩阵: ");
      for (int i = 0; i < matrix_length; i++) {
         for (int j = 0; j < input_matrix[0].length; j++)
            System.out.print(input_matrix[i][j] + " ");
         System.out.println();
      }
   }
   public static void main(String args[]) {
      int input_matrix[][] = { { 4, 5, 6, 7 },
         { 1, 7, 3, 4 },
         { 11, 12, 13, 14 },
         { 23, 24, 25, 50 }
      };
      System.out.println("该矩阵定义为: ");
      for (int i = 0; i < input_matrix.length; i++) {
         for (int j = 0; j < input_matrix[0].length; j++)
            System.out.print(input_matrix[i][j] + " ");
         System.out.println();
      }
      swap(input_matrix);
   }
}

输出

矩阵定义为:
4 5 6 7
1 7 3 4
11 12 13 14
23 24 25 50

交换元素后的矩阵:
23 24 25 50
1 7 3 4
11 12 13 14
4 5 6 7

相关文章