剑指offer-19-顺时针打印矩阵

顺时针打印矩阵

http://www.nowcoder.com/questionTerminal/9b4c81a02cd34f76be2659fa0d54342a

# -*- coding:utf-8 -*-
class Solution:
    # matrix类型为二维列表,需要返回列表
    def printMatrix(self, matrix):
        # write code here
        if matrix==None:
            return None
        ##找到四个边
        low=0
        height=len(matrix)-1
        left=0
        right=len(matrix[0])-1
        result=[]
        while low<=height and left<=right:
            for i in range(left,right+1):
                result.append(matrix[low][i])
            for j in range(low+1,height+1):
                result.append(matrix[j][right])
            if low<height: ##防止重复操作
                for k in range(right-1,left-1,-1):
                    result.append(matrix[height][k])
            if left<right:  ##防止重复操作
                for l in range(height-1,low,-1):
                    result.append(matrix[l][left])
            ##缩小矩阵
            low+=1
            height-=1
            left+=1
            right-=1
        return result
全部评论

相关推荐

owwhy:难,技术栈在嵌入式这块显得非常浅,并且简历有大问题。教育经历浓缩成两行就行了,写什么主修课程,说的不好听这块没人在意,自我评价删了,项目写详细点,最终简历缩成一页。相关技能怎么说呢,有点差了,还写成这么多行
投了多少份简历才上岸
点赞 评论 收藏
分享
老板加个卤鸡蛋:HR看了以为来卧底来了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务