Java 程序交换对角线
javacampus interviewserver side programmingprogramming
在本文中,我们将了解如何交换对角线。矩阵的元素按行和列排列。具有 m 行和 n 列的矩阵可以称为 m × n 矩阵。
矩阵中的各个条目称为元素,可以用 a[i][j] 表示,这表明元素 a 存在于第 i 行和第 j 列。
下面是相同的演示 −
假设我们的输入是 −
矩阵定义为: 4 5 6 1 2 3 7 8 9
期望的输出将是 −
交换元素后的矩阵: 6 5 4 1 2 3 9 8 7
算法
步骤 1 - 开始 步骤 2 - 声明一个整数矩阵,即 input_matrix,以及两个整数值,即 matrix_size 和 temp。 步骤 3 - 定义值。 步骤 4 - 使用多个 for 循环迭代矩阵的每个元素,并使用临时变量交换矩阵所需的元素。 步骤 5 - 显示结果 步骤 5 - 停止
示例 1
在这里,我们将所有操作都绑定在‘main’函数下。
public class InterchangeDiagonals { public static int matrix_size = 3; public static void main (String[] args) { int input_matrix[][] = { {4, 5, 6}, {1, 2, 3}, {7, 8, 9} }; System.out.println("该矩阵定义为: "); for (int i = 0; i < matrix_size; i++) { for (int j = 0; j < matrix_size; j++) { System.out.print(input_matrix[i][j] + " "); } System.out.println(); } for (int i = 0; i < matrix_size; ++i) if (i != matrix_size / 2) { int temp = input_matrix[i][i]; input_matrix[i][i] = input_matrix[i][matrix_size - i - 1]; input_matrix[i][matrix_size - i - 1] = temp; } System.out.println("\nThe matrix after interchanging the elements: "); for (int i = 0; i < matrix_size; ++i) { for (int j = 0; j < matrix_size; ++j) System.out.print(input_matrix[i][j]+" "); System.out.println(); } } }
输出
矩阵定义为: 4 5 6 1 2 3 7 8 9 交换元素后的矩阵: 6 5 4 1 2 3 9 8 7
示例 2
在这里,我们将操作封装成展现面向对象编程的函数。
public class InterchangeDiagonals { public static int matrix_size = 3; static void interchange_diagonals(int input_matrix[][]) { for (int i = 0; i < matrix_size; ++i) if (i != matrix_size / 2) { int temp = input_matrix[i][i]; input_matrix[i][i] = input_matrix[i][matrix_size - i - 1]; input_matrix[i][matrix_size - i - 1] = temp; } System.out.println("\nThe matrix after interchanging the elements: "); for (int i = 0; i < matrix_size; ++i) { for (int j = 0; j < matrix_size; ++j) System.out.print(input_matrix[i][j]+" "); System.out.println(); } } public static void main (String[] args) { int input_matrix[][] = { {4, 5, 6}, {1, 2, 3}, {7, 8, 9} }; System.out.println("该矩阵定义为: "); for (int i = 0; i < matrix_size; i++) { for (int j = 0; j < matrix_size; j++) { System.out.print(input_matrix[i][j] + " "); } System.out.println(); } interchange_diagonals(input_matrix); } }
输出
矩阵定义为: 4 5 6 1 2 3 7 8 9 交换元素后的矩阵: 6 5 4 1 2 3 9 8 7