Java日记2018-08-01

2018-08-01  本文已影响0人  hayes0420

Rotate Image
图片分为行数/2层,然后一层层进行旋转,每一层有上下左右四个列,然后目标就是把上列放到右列,右列放到下列,下列放到左列,左列放回上列,中间保存一个临时变量

public static void rotate(int[][] arr){
        if(arr==null) return;
        int n = arr.length-1;
        for (int i = 0; i <= n / 2; i++) {
            for (int j = i; j <= n / 2; j++) {
                int temp = arr[i][j];
                arr[i][j] = arr[n-j][i];
                arr[n-j][i] = arr[n-i][n-j];
                arr[n-i][n-j] = arr[j][n-i];
                arr[j][n-i] =temp;
            }
        }
    }
    
    
    public static void main(String[] args){

        int[][] arr1 = {{1,2,3},{4,5,6},{7,8,9}};
        rotate(arr1);
        for(int i=0;i<3;i++){
        System.out.println(arr1[2][i]);
        }
    
    }
上一篇下一篇

猜你喜欢

热点阅读