對陣列實現螺旋輸出

2021-08-17 22:34:11 字數 1199 閱讀 3517

矩陣的螺旋輸出

def

spiral_order

(matrix):

ret =

rows = len(matrix)

if rows == 0:

return ret

columns = len(matrix[0])

i, j = 0, 0

# 方陣的左上角座標

while (rows > 0) and (columns > 0):

for k in range(j, j + columns): # 第一行

if rows > 1: # 行數大於1

for k in range(i + 1, i + rows): # 最右列

if columns > 1: # 列數大於1

for k in range(j + columns - 2, j - 1, -1): # 最下行

for k in range(i + rows - 2, i, -1): # 最左列

rows -= 2

columns -= 2

i += 1

j += 1

return ret

定義了乙個矩陣的螺旋尋找元素的函式

import numpy as np

print(spiral_order())

print(spiral_order([[1]]))

matrix3=(np.array(range(1,37,1)).reshape(6,6))

print(matrix3)

print(spiral_order(matrix3))

[1][[ 1 2 3 4 5 6]

[ 7 8 9 10 11 12]

[13 14 15 16 17 18]

[19 20 21 22 23 24]

[25 26 27 28 29 30]

[31 32 33 34 35 36]]

[1, 2, 3, 4, 5, 6, 12, 18, 24, 30, 36, 35, 34, 33, 32, 31, 25, 19, 13, 7, 8, 9, 10, 11, 17, 23, 29, 28, 27, 26, 20, 14, 15, 16, 22, 21]

陣列螺旋輸出

看過我前幾篇部落格的朋友應該有體會,博主是個逗逼 沙雕 中二 重度患者 那時候假酒喝多了,大家見諒。今天幫朋友用js寫了乙個陣列螺旋輸出的 實現,寫完之後我自己很滿意,抱著 獨樂樂不如眾樂樂 的思想,貼出來和大家分享分享,也算是為開源社群做了丁丁大點的貢獻了。20191221 螺旋輸出陣列 func...

用python實現對陣列排序,輸出座標

如題,我們對 1,3,2 這樣的陣列進行排序,我們想要他的順序座標,那麼輸出就是 從大到小 1,2,0 首先,用到了 enumerate 這個內建函式 我們先看下這個函式的作用 a 1,3,2 for i in enumerate a print i 執行截圖 我們可以看出,他把每個數字的座標存在了...

LeetCode 實現矩陣螺旋輸出

位元組 美團真題 給定乙個m n的矩陣,請按順時針螺旋順序,返回矩陣中所有的元素.示例 1 input matrix 1,2,3 4,5,6 7,8,9 output 1,2,3,6,9,8,7,4,5 示例 2 input matrix 1,2,3,4 5,6,7,8 9,10,11,12 out...