摘要:題目詳情這道題目要求我們對一個正方形矩陣進行順時針度的翻轉。并且要求不聲明額外的空間,不能新建二維數組。輸入數組旋轉后的輸入數組想法這道題因為要求在位。所以我們需要找到一種解法,使得每次操作都是交換兩個元素的位置,最后實現整個矩陣的旋轉。
題目詳情
You are given an n x n 2D matrix representing an image.想法
Rotate the image by 90 degrees (clockwise).
Note:
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.這道題目要求我們對一個正方形矩陣進行順時針90度的翻轉。并且要求不聲明額外的空間,不能新建二維數組。
Example 2:
輸入數組matrix =
[
[ 5, 1, 9,11],
[ 2, 4, 8,10],
[13, 3, 6, 7],
[15,14,12,16]
],
旋轉后的輸入數組:
[
[15,13, 2, 5],
[14, 3, 4, 1],
[12, 6, 8, 9],
[16, 7,10,11]
]
這道題因為要求“在位”。所以我們需要找到一種解法,使得每次操作都是交換兩個元素的位置,最后實現整個矩陣的旋轉。
我們先對整個矩陣進行上下翻轉。如下
123 789
456 -> 456
789 123
然后對矩陣進行沿對角線的翻轉。如下
789 741
456 -> 852
123 963
就得到了我們最后旋轉90度的矩陣。
解法//先將上下翻轉,再沿對角線翻轉 public void rotate(int[][] matrix) { int height = matrix.length; int width = matrix[0].length; //上下翻轉 for(int i=0;i
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/68514.html
LeetCode[48] Rotate Image You are given an n x n 2D matrix representing an image. Rotate the image by 90 degrees (clockwise). Follow up:Could you do this in-place? 復雜度O(N^2),O(1) 代碼 public void ro...
Problem You are given an n x n 2D matrix representing an image. Rotate the image by 90 degrees (clockwise). Note: You have to rotate the image in-place, which means you have to modify the input 2D mat...
摘要:每一次的旋轉,其實都是正方形上的四個元素之間的相互替換。所以本質上我們只需遍歷每種長度正方形上的一條邊,就可以完成這個正方形的旋轉。最后實現整個數組矩陣的旋轉代表正方形的起始位置,即,,即,代表當前正方形上的一條邊上的一個點。 題目要求 You are given an n x n 2D matrix representing an image. Rotate the image b...
摘要:前言從開始寫相關的博客到現在也蠻多篇了。而且當時也沒有按順序寫現在翻起來覺得蠻亂的。可能大家看著也非常不方便。所以在這里做個索引嘻嘻。順序整理更新更新更新更新更新更新更新更新更新更新更新更新更新更新更新更新 前言 從開始寫leetcode相關的博客到現在也蠻多篇了。而且當時也沒有按順序寫~現在翻起來覺得蠻亂的。可能大家看著也非常不方便。所以在這里做個索引嘻嘻。 順序整理 1~50 1...
摘要:交換法復雜度時間空間思路為了實現這題,我們要用交換的方法,順序是左上先和左下交換,然后左上和右下交換,然后左上和右上交換。和類似,我們通過圈數來控制內外的順序。代碼計算圈數左上和左下交換左上和右下交換左上和右上交換 Rotate Image You are given an n x n 2D matrix representing an image. Rotate the image...
閱讀 3316·2021-11-16 11:45
閱讀 4387·2021-09-22 15:38
閱讀 2841·2021-09-22 15:26
閱讀 3347·2021-09-01 10:48
閱讀 827·2019-08-30 15:56
閱讀 715·2019-08-29 13:58
閱讀 1487·2019-08-28 18:00
閱讀 2160·2019-08-27 10:53