m:1" />

欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

python(leetcode)498. 對(duì)角線遍歷

系統(tǒng) 1883 0

這題難度中等,記錄下思路

第一個(gè)會(huì)超時(shí),

第二個(gè):思想是按斜對(duì)角線行進(jìn)行右下左上交替遍歷,

            
               1
            
            
              def
            
            
               traverse(matrix):

            
            
               2
            
                 n=len(matrix)-1

            
               3
            
                 m=len(matrix[0])-1

            
               4
            
                 result=
            
              []

            
            
               5
            
            
              for
            
             i 
            
              in
            
             range(m+n+1
            
              ):

            
            
               6
            
            
              if
            
            (i % 2 ==
            
               0):

            
            
               7
            
            
              for
            
             j 
            
              in
            
             range(i, -1, -1
            
              ):

            
            
               8
            
                                 x=
            
              j

            
            
               9
            
                                 y=i-
            
              x

            
            
              10
            
            
              if
            
             x <= n 
            
              and
            
             y <=
            
               m:

            
            
              11
            
            
                                      result.append(matrix[x][y])

            
            
              12
            
            
              #
            
            
               elif y > m:
            
            
              13
            
            
              #
            
            
                   break
            
            
              14
            
            
              else
            
            
              :

            
            
              15
            
            
              continue
            
            
              16
            
            
              else
            
            
              :

            
            
              17
            
            
              for
            
             j 
            
              in
            
             range(i, -1, -1
            
              ):

            
            
              18
            
                                 y=
            
              j

            
            
              19
            
                                 x=i-
            
              y

            
            
              20
            
            
              if
            
             x <= n 
            
              and
            
             y <=
            
               m:

            
            
              21
            
            
                                      result.append(matrix[x][y])

            
            
              22
            
            
              #
            
            
               elif x > n:
            
            
              23
            
            
              #
            
            
                   break
            
            
              24
            
            
              else
            
            
              :

            
            
              25
            
            
              continue
            
            
              26
            
            
              return
            
            
               result

            
            
              27
            
            
              28
            
            
              if
            
            
              __name__
            
             == 
            
              '
            
            
              __main__
            
            
              '
            
            
              :

            
            
              29
            
                 ma=
            
              [

            
            
              30
            
              [ 1, 2, 3
            
               ],

            
            
              31
            
              [ 4, 5, 6
            
               ],

            
            
              32
            
              [ 7, 8, 9
            
               ]

            
            
              33
            
            
              ]

            
            
              34
            
            
              print
            
            (traverse(ma))
          

?

11

            
               1
            
            
              def
            
            
               diagonial(matrix):

            
            
               2
            
                 m=
            
              len(matrix)

            
            
               3
            
                 n=
            
              len(matrix[0])

            
            
               4
            
            
              #
            
            
              思想是按斜對(duì)角線行進(jìn)行遍歷
            
            
               5
            
            
              #
            
            
              遍歷的方向右下,左上交替進(jìn)行
            
            
               6
            
                 line=
            
              0

            
            
               7
            
                 res=
            
              []

            
            
               8
            
                 tem=
            
              []

            
            
               9
            
                 is_sure=
            
              True

            
            
              10
            
            
              #
            
            
              對(duì)每一行進(jìn)行循環(huán) 斜對(duì)角線有m+n-1條
            
            
              11
            
            
              while
            
             line<(m+n-1
            
              ):

            
            
              12
            
            
              #
            
            
              設(shè)置起點(diǎn)
            
            
              13
            
            
              if
            
            (line<
            
              m):

            
            
              14
            
                         x=
            
              line

            
            
              15
            
                         y=
            
              0

            
            
              16
            
            
              else
            
            
              :

            
            
              17
            
                         x=m-1

            
              18
            
                         y=line-m-1

            
              19
            
            
              #
            
            
              每行循環(huán)幾次
            
            
              20
            
            
              #
            
            
              因?yàn)槎际菑挠疑祥_始,所以設(shè)置條件x>0,y
              
            
            
              21
            
            
              while
            
             x>=0 
            
              and
            
             y <
            
              n:

            
            
              22
            
            
              #
            
            
               存儲(chǔ)斜行的元素
            
            
              23
            
            
                          tem.append(matrix[x][y])

            
            
              24
            
                         x-=1

            
              25
            
                         y+=1

            
              26
            
            
              #
            
            
              如果是左下開始,則反向添加
            
            
              27
            
            
              if
            
            
              (is_sure):

            
            
              28
            
            
                          tem.reverse()

            
            
              29
            
            
              for
            
             num 
            
              in
            
            
               tem:

            
            
              30
            
            
                          res.append(num)

            
            
              31
            
                     line+=1

            
              32
            
            
              return
            
            
               res

            
            
              33
            
            
              34
            
            
              35
            
            
              if
            
            
              __name__
            
             == 
            
              '
            
            
              __main__
            
            
              '
            
            
              :

            
            
              36
            
                 matrix=
            
              [

            
            
              37
            
              [ 1, 2, 3
            
               ],

            
            
              38
            
              [ 4, 5, 6
            
               ],

            
            
              39
            
              [ 7, 8, 9
            
               ]

            
            
              40
            
            
              ]

            
            
              41
            
            
              print
            
            (diagonial(matrix))
          

?


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 欧美精品一区二区三区蜜桃视频 | 亚洲婷婷在线 | 成人黄色短视频在线观看 | 奇米网狠狠| 意大利av在线 | 看毛片的网站 | 色窝视频| 欧美日韩在线观看中文字幕 | 色噜噜狠狠色综合欧洲 | 欧美久久综合 | 日韩在线黄色 | 天天爱天天操 | 国产精品果冻麻豆精东天美 | 我爱看片(永久免费) | 久久久伊人色综合A片无码 国产精品区一区二区三 | 日产乱码卡一卡2卡三卡四麻豆 | 日本欧美不卡一区二区三区在线 | 2019偷偷狠狠的日日 | 欧美福利大片 | 日日操夜夜草 | 欧美性一区二区三区 | 九色传媒 | 一区二区中文字幕 | 亚洲精品一区二区三区在线 | 欧美特黄aaaaaaaa大片 | 99午夜高清在线视频在观看 | 精品一区二区三区的国产在线观看 | 欧美一区二区免费 | 99久热| 久久视频精品 | 久久亚洲精品中文字幕二区 | 一区二区三区国产 | 亚洲日本高清成人aⅴ片 | 国产在线观看午夜不卡 | 亚洲一区二区免费看 | 狠狠干伊人网 | 日本大学生免费一级一片 | 久久99色| 野花国产精品入口 | 亚洲福利网 | 日日操视频 |