一、矩阵问题基础
遍历:
for i in range(len(matrix[0])):
for j in range(len(matrix):
while
倒序遍历:
for i in range(right,left,-1)
临时存储:temp
w,h:len(matrix[0])-1 len(matrix)-1
left,right,top,bottom:0 len(matrix[0])-1 0 len(matrix)-1
索引:
width = len(matrix[0])
height=height_2=len(matrix)
w=width-1
h=height-1
二、旋转图像
1 题目
2 解题思路
(1)先对角翻转,对角反转需要注意什么?
(2)再上下翻转
3 code
class Solution(object):
def rotate(self, matrix):
width = len(matrix[0])
height=height_2=len(matrix)
w=width-1
h=height-1
# 对角翻转
for i in range(width):
for j in range(height):
temp = matrix[i][j]
matrix[i][j]=matrix[h-j][w-i]
matrix[h-j][w-i]=temp
height=height-1
# 上下翻转
for j in range(int(math.floor(height_2/2))):
temp=matrix[j]
matrix[j]=matrix[h-j]
matrix[h-j]=temp
return matrix