找LeetCode上简单的题目来撑过30天啦(DAY22)

题号:48 标题:Rotate Image 难度:Medium

You are given an n x n 2D matrix representing an image, rotate the image by 90 degrees (clockwise).
You have to rotate the image in-place, which means you have to modify the input 2D matrix directly. DO NOT allocate another 2D matrix and do the rotation.

Example 1:

Input: matrix = [[1,2,3],[4,5,6],[7,8,9]]
Output: [[7,4,1],[8,5,2],[9,6,3]]

Example 2:

Input: matrix = [[5,1,9,11],[2,4,8,10],[13,3,6,7],[15,14,12,16]]
Output: [[15,13,2,5],[14,3,4,1],[12,6,8,9],[16,7,10,11]]

Example 3:
Input: matrix = [[1]]
Output: [[1]]

Example 4:
Input: matrix = [[1,2],[3,4]]
Output: [[3,1],[4,2]]

Constraints:
• matrix.length == n
• matrix[i].length == n
• 1 <= n <= 20
• -1000 <= matrix[i][j] <= 1000

我的程序码

void rotate(int** matrix, int matrixSize, int* matrixColSize){
    int i,j,k=0;
    int result[(matrixSize*matrixSize)];
    for(i=0;i<matrixSize;i++){
       for(j=matrixSize-1;j>=0;j--)
       {   result[k]=matrix[j][i];  
          printf("%d",matrix[j][i]);k++;}
printf("\n");}k=0;
for(i=0;i<matrixSize;i++){
       for(j=0;j<matrixSize;j++)
       {   matrix[i][j]=result[k];
          printf("%d",matrix[i][j]);k++;}
printf("\n");}
    
    return 0;
}

提示
这题其实蛮简单的,但不能再宣告一个2维阵列,此题是四个一组的换位置,不过解题时我在坐车,用手机写的,直接偷吃步,存到一维再转存二维,想说过不了再说,没想到过了XD,四个一组的换法可以直接参考此题的solution

DAY22心得
我想放假


<<:  Day22 Gin with CORS

>>:  [Day - 22] - 今晚我想来个Spring Async非同步的感觉

[Day 1] 主角总是最後登场的 (後端篇)

其实只是拖延症点到满等的我,说是主角其实只是拖延症发作 我通常都是先撰写前端篇才写後端篇,所以看官们...

Day27 - 登出及连线中断

今天来做登出的功能以及连线中断的处理。 Navigation Action 不论是登出还是中断连线,...

Day26 MANO开源专案使用之OSM-环境篇

Open Source MANO (OSM)是由ETSI所提供的一个开源的MANO专案,可以使用此专...

Golang - Redis基本介绍

工作上没机会用到Redis 自己就搞一个来玩,以後工作说不定也会用到 Redis是什麽 官网:htt...

课堂笔记 - 深度学习 Deep Learning (5) Lab1

用python实作PLA (直接把训练资料写进程序里) 昨天才发现之前就交出去的作业code不小心...