diff --git a/OJ notes/pages/Leetcode Rotate-Image.md b/OJ notes/pages/Leetcode Rotate-Image.md new file mode 100644 index 0000000..2203a59 --- /dev/null +++ b/OJ notes/pages/Leetcode Rotate-Image.md @@ -0,0 +1,60 @@ +# Leetcode Rotate-Image + +2022-09-02 15:40 + +> ##### Algorithms: +> #algorithm #math +> ##### Data structures: +> #DS #array +> ##### Difficulty: +> #coding_problem #difficulty-medium +> ##### Additional tags: +> #leetcode #CS_list_need_understanding +> ##### Revisions: +> N/A + +##### Links: +- [Link to problem](https://leetcode.com/problems/rotate-image/) +- [Solution and explanation](https://leetcode.com/problems/rotate-image/solution/) +___ +### Problem + +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**](https://en.wikipedia.org/wiki/In-place_algorithm), which means you have to modify the input 2D matrix directly. **DO NOT** allocate another 2D matrix and do the rotation. + +#### Examples + +**Example 1:** + +![](https://assets.leetcode.com/uploads/2020/08/28/mat1.jpg) + +``` +**Input:** matrix = [[1,2,3],[4,5,6],[7,8,9]] +**Output:** [[7,4,1],[8,5,2],[9,6,3]] +``` + +**Example 2:** + +![](https://assets.leetcode.com/uploads/2020/08/28/mat2.jpg) + +``` +**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]] +``` + +#### Constraints + +### Thoughts + +> [!summary] +> This is a #math problem. + +Mainly two ways + +#### Method 1: rotate in rings + +#### Method 2: transpose and reflect + +### Solution +