描述
该题来自于力扣第48题
分析
通过观察示例可以发现,本质是
以示例2为例,
算法
- 遍历所有层layer,从第0层遍历到
层就好; - 利用上面的替换公式开始循环替换,
matrix[layer][i] -> matrix[i][n-layer-1]->matrix[n-layer-1][n-i-1]->matrix[n-i-1][layer]->matrix[layer][i];其中i从layer到n-layer-2;
代码
python
```python class Solution: def rotate(self, matrix: List[List[int]]) -> None: """ Do not return anything, modify matrix in-place instead. """ n = len(matrix) for layer in range(n // 2): for i in range(layer, n-layer-1): t = matrix[layer][i] matrix[layer][i] = matrix[n-i-1][layer] matrix[n-i-1][layer] = matrix[n-layer-1][n-i-1] matrix[n-layer-1][n-i-1] = matrix[i][n-layer-1] matrix[i][n-layer-1] = t ```继续这个系列