【刷题(2)】矩阵

【刷题(2)】矩阵

码农世界 2024-05-13 前端 67 次浏览 0个评论

一、矩阵问题基础

遍历:

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

三、螺旋矩阵

1 题目

2 解题思路

3 code

转载请注明来自码农世界,本文标题:《【刷题(2)】矩阵》

百度分享代码,如果开启HTTPS请参考李洋个人博客
每一天,每一秒,你所做的决定都会改变你的人生!

发表评论

快捷回复:

评论列表 (暂无评论,67人围观)参与讨论

还没有评论,来说两句吧...

Top