矩阵打印(宏观调度思路)

本文介绍了矩阵的两种打印方式:转圈打印和之字形打印,并探讨了如何在有序矩阵中判断一个数是否存在,时间复杂度为O(n+m),空间复杂度为O(1)。方法是从矩阵的右上角或左下角开始遍历。
摘要由CSDN通过智能技术生成

1、转圈打印矩阵:
在这里插入图片描述

def circleprint(matrix):   #主函数
    row1=0
    col1=0
    row2=matrix.shape[0]-1
    col2=matrix.shape[1]-1
    while row1<=row2 and col1<=col2:   #越界则结束,循环一次(左上方->右下方,右下方->左上方)
        printedge(matrix,row1,col1,row2,col2)
        row1+=1
        row2-=1
        col1+=1
        col2-=1
def printedge(matrix,row1,col1,row2,col2):
    if row1==row2:
        for i in range(col1,col2+1):
            print(matrix[row1][i],end=" ")
    elif col1==col2:
        for i in range(row1,row2+1):
            print(matrix[i][col1],end=" ")
    else:
        c=col1
        r=row1
        while c!=col2:
            print(matrix[row1][c],end=" ")
            c+=1
        while
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值