Java矩阵旋转题解
2026/6/8 15:41:54 网站建设 项目流程

题目

定义一个n*n的二维数组1到9,利用代码将数组顺时针旋转90°,180°和270°
1.定义两个二维数组分别存储旋转前后的矩阵.

public class Main { public static void main(String[] args){ int arr[][]={{1,2,3}, {4,5,6}, {7,8,9}}; int n=3; int[][] array=new int[n][n];

2.旋转90°

for (int i = 0; i < n; i++) { for (int j = 0; j < n; j++) { result[j][n - 1 - i] = matrix[i][j]; } }

将(i,j)的元素存储到(j,n-1-i)中n-1是最后一列的下标-i是因为填完一行后要向左移i行

3.旋转180°

for(int i=0;i<n;i++){ for(int j=0;j<n;j++){ array[n-1-i][n-1-j]=arr[i][j]; } }

将(i,j)的元素储存到(n-1-i,n-1-j)中。

4.旋转270°

for (int i = 0; i < n; i++) { for (int j = 0; j < n; j++) { array[n - 1 - j][i] = arr[i][j]; } }

将(i,j)的元素储存到(n-1-j,i)中,与旋转90°刚好相反。

5.利用双层循环遍历数组输出旋转后的结果

for(int i=0;i<n;i++){ for(int j=0;j<n;j++){ System.out.print(array[i][j]+" "); } System.out.println(); }

注:每输出一行后要换行。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询