请使用编程实现二维数组的翻转操作,例如输入二维数组如下 1 2 3 4 5 6 7 8 9 经过翻转处理后得到如下输出 1 4 7 2 5 8 3 6 9
时间: 2024-09-15 11:04:35 浏览: 29
在Python中,你可以使用列表推导式或者双重循环来实现二维数组(矩阵)的翻转。这里是一个简单的例子:
```python
def flip_2d_array(matrix):
# 使用列表推导式进行翻转
flipped = [row[::-1] for row in matrix]
return flipped
# 示例输入
input_matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
flipped_matrix = flip_2d_array(input_matrix)
print(f"原矩阵: {input_matrix}")
print(f"翻转后的矩阵: {flipped_matrix}")
```
在这个例子中,`[::-1]` 是切片操作,表示从后向前取值,步长为 -1,即实现了行的反转。运行上述代码,你会得到预期的结果。
如果你想手动遍历并交换元素,可以采用以下方式:
```python
def manual_flip_2d_array(matrix):
rows = len(matrix)
cols = len(matrix[0])
flipped_matrix = [[0] * cols for _ in range(rows)] # 初始化一个新的矩阵
for i in range(rows):
for j in range(cols):
flipped_matrix[i][j] = matrix[rows - i - 1][j] # 通过索引交换
return flipped_matrix
# 手动翻转示例
flipped_matrix_manual = manual_flip_2d_array(input_matrix)
print(f"翻转后的矩阵 (手动): {flipped_matrix_manual}")
```
阅读全文