""" 旋转矩阵 给定一个n阶二维矩阵,将矩阵顺时针旋转90度 要求:必须在原地旋转矩阵,即直接修改输入的二维矩阵,不要使用另 一个矩阵来辅助旋转。 """ from day067 import gen, show def rotate(matrix): """ 旋转二维矩阵。 该函数通过交换矩阵的行和列来实现顺时针旋转90度。 :param matrix: 二维列表,表示待旋转的矩阵 """ # 获取矩阵的长度 length = len(matrix) # 交换矩阵对角线两侧的元素,实现水平翻转 for i in range(length // 2): for j in range(length): matrix[i][j], matrix[length - i - 1][j] = matrix[length - i - 1][j], matrix[i][j] # 交换矩阵每行元素的位置,实现垂直翻转 for i in range(length): for j in range(i): matrix[i][j], matrix[j][i] = matrix[j][i], matrix[i][j] # 生成一个6x6的矩阵 matrix = gen(6) # 显示旋转前的矩阵 print('旋转前矩阵如下:') show(matrix) # 调用旋转函数 rotate(matrix) # 显示旋转后的矩阵 print('旋转后矩阵如下:') show(matrix)
评论前必须登录!
注册