66. Rotate Image (90 Degrees)

MediumArrayArray

You are given an n x n 2D matrix representing an image. Rotate the image by 90 degrees (clockwise) in-place.

Input: An n x n 2D integer array matrix.

Output: The matrix rotated 90 degrees clockwise in-place.

Examples

Example 1
Input: [[1,2,3],[4,5,6],[7,8,9]]
Output: [[7,4,1],[8,5,2],[9,6,3]]
Explanation: Step 1 - Transpose: [[1,4,7],[2,5,8],[3,6,9]].
Step 2 - Reverse each row: [[7,4,1],[8,5,2],[9,6,3]].
Example 2
Input: [[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]]
Explanation: Transpose then reverse each row.
Example 3
Input: [[1]]
Output: [[1]]
Explanation: 1x1 matrix — no rotation needed.

Constraints

Asked by

IBMMicrosoftAppleBloombergAmazonGoogle
Solve this problem in the editor →