πDay 2. Rotate by 90 degree π§
The problem can be found at the following link: Problem Link
π‘ Problem Description:
Given a square matrix mat[][] of size n x n, rotate it by 90 degrees in an anti-clockwise direction without using any extra space.
π Example Walkthrough:
Input:
mat[][] = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
Output:
Rotated Matrix: [[3, 6, 9], [2, 5, 8], [1, 4, 7]]
Input:
mat[][] = [[1, 2], [3, 4]]
Output:
Rotated Matrix: [[2, 4], [1, 3]]
Constraints:
$
1 β€ n β€ 10^2$$
0 β€ mat[i][j] β€ 10^3$
π― My Approach:
In-Place Transposition and Column Reversal:
The matrix can be rotated by performing two operations:
Transpose the matrix: Swap
mat[i][j]andmat[j][i]for alli, jwherei < j.Reverse each column of the matrix: For each column, swap elements from the top and bottom.
Steps:
First, transpose the matrix to convert rows into columns.
Then, reverse each column to achieve the desired 90-degree rotation in anti-clockwise direction.
No extra space is used, and the operations are performed in-place.
π Time and Auxiliary Space Complexity
Expected Time Complexity: O(nΒ²), where
nis the size of the matrix. The algorithm involves transposing the matrix (O(nΒ²)operations) and then reversing each column (O(nΒ²)operations).Expected Auxiliary Space Complexity: O(1), as all operations are performed in-place, and no additional space is used.
π Solution Code
Code (C)
Code (Cpp)
Code (Java)
Code (Python)
π― Contribution and Support:
For discussions, questions, or doubts related to this solution, feel free to connect on LinkedIn: Any Questions. Letβs make this learning journey more collaborative!
β If you find this helpful, please give this repository a star! β
πVisitor Count
Last updated