मान लीजिए हमारे पास एक n x n 2D मैट्रिक्स है। हमें इस मैट्रिक्स को 90 डिग्री घड़ी की दिशा में घुमाना है।
यदि मैट्रिक्स है: [[1, 5, 7], [9, 6, 3], [2, 1, 3]] तो आउटपुट होगा: [[2, 9, 1], [1, 6, 5], [3, 3, 7]]
हल करने का तरीका
- temp_matrix := [], column := मैट्रिक्स की लंबाई - 1
- प्रत्येक कॉलम के लिए:
- temp := []
- पंक्तियों को नीचे से ऊपर तक पार करें और मैट्रिक्स[row][column] को temp में जोड़ें
- temp को temp_matrix में जोड़ें
- मूल मैट्रिक्स को temp_matrix से अपडेट करें
उदाहरण कोड (पायथन)
class Solution(object):
def rotate(self, matrix):
temp_matrix = []
column = len(matrix) - 1
for column in range(len(matrix)):
temp = []
for row in range(len(matrix) - 1, -1, -1):
temp.append(matrix[row][column])
temp_matrix.append(temp)
for i in range(len(matrix)):
for j in range(len(matrix)):
matrix[i][j] = temp_matrix[i][j]
return matrix
ob1 = Solution()
print(ob1.rotate([[1, 5, 7], [9, 6, 3], [2, 1, 3]]))
इनपुट
[[1, 5, 7], [9, 6, 3], [2, 1, 3]]
आउटपुट
[[2, 9, 1], [1, 6, 5], [3, 3, 7]]