文章
27
粉丝
492
获赞
10
访问
268.9k
本题总体思路为只要写出将数组旋转90的代码就行,因为旋转180度思路是一样的,无非就是把旋转90的方阵再次旋转90,270也一样。
所以难点在于写出旋转90的方法,如何找出原数组和旋转90的数组的关系,分析如下:
原数组 1 2 3 4 5 6 7 8 9 旋转90的数组 步骤1:将原数组先做行列变化,即行先变为列 7 4 1 得到 1 4 7 8 5 2 2 5 8 9 6 3 3 6 9
步骤2:对于行列变化后的数组,将列从后往前输出,即倒序输出,就得到变化后的方阵
import java.util.Arrays;
import java.util.Scanner;
public class Main {
public static int[][] turn_90(int a[][], int n) {
int[][] c = new int[n + 1][n + 1]; //用于存放变化后的新数组
for (int i = 1; i <= n; i++) {
int k = 1;
for (int j = n; j >= 1; j--) { //列倒序输出
c[i][k++] = a[j][i]; //行列变化
...
登录后发布评论
暂无评论,来抢沙发