如何编写一个程序来实现矩阵顺时针旋转90度?
时间: 2024-12-18 11:22:13 浏览: 8
要编写一个程序实现矩阵顺时针旋转90度,可以采用两种常用的方法:第一种是通过数组切片和转置操作;第二种是使用二维数组并逐行交换元素。这里提供两种语言的示例代码:
### 方法一:Python (利用数组切片)
```python
def rotate_matrix(matrix):
n = len(matrix)
return [list(i) for i in zip(*matrix[::-1])]
# 示例
input_matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
rotated_matrix = rotate_matrix(input_matrix)
print(rotated_matrix)
```
### 方法二:JavaScript (使用二维数组)
```javascript
function rotateMatrix(matrix) {
let n = matrix.length;
for (let i = 0; i < n / 2; i++) {
for (let j = i; j < n - i - 1; j++) {
let temp = matrix[i][j];
matrix[i][j] = matrix[n - j - 1][i]; // 上下交换
matrix[n - j - 1][i] = matrix[n - i - 1][n - j - 1]; // 左右交换
matrix[n - i - 1][n - j - 1] = matrix[j][n - 1] = temp; // 下左交换
}
}
return matrix;
}
// 示例
let inputMatrix = [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9]
];
let rotatedMatrix = rotateMatrix(inputMatrix);
console.log(rotatedMatrix);
```
阅读全文