用 Python 旋轉影像
假設我們有一個 2D 矩陣,它表示一張影像。我們必須將此影像旋轉 90 度順時針。因此,如果影像如下所示
| 1 | 5 | 7 |
| 9 | 6 | 3 |
| 2 | 1 | 3 |
那麼輸出將是
| 2 | 9 | 1 |
| 1 | 6 | 5 |
| 3 | 3 | 7 |
為了解決這個問題,我們將遵循以下步驟 -
- 考慮 temp_mat = [],col := 矩陣長度 - 1
- col 在 0 到矩陣長度的範圍內
- temp := []
- row 在矩陣長度 - 1 到 -1 的範圍內
- 將 matrix[row, col] 新增到 temp 中
- 將 temp 新增到 temp_mat 中
- i 在 0 到矩陣長度的範圍內
- j 在 0 到矩陣長度的範圍內
- matrix[i, j] := temp_mat[i, j]
- j 在 0 到矩陣長度的範圍內
示例(Python)
讓我們看以下實現以獲得更好的理解 -
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]]
廣告
資料結構
網路
關係型資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP