0
我已經嘗試實現一個遞歸算法:「X」是一個全局變量輸出遞歸執行
def build_paths(m,n):
Result = []
Move = X[(m,n)][1]
if Move[0] == "None":
return(Move[0])
else:
if Move[0]=="UP":
m -= 1
elif Move[0]=="Left":
n -= 1
else:
m -= 1
n -= 1
Result = [build_paths(m,n),Move[0]]
return(Result)
這產生
[[[[[[['None', 'LEFT'], 'DIAG'], 'DIAG'], 'DIAG'], 'UP'], 'DIAG'], 'DIAG']
這在本質上是我想要的,但我真正想要的是
['None','LEFT','DIAG','DIAG','UP','DIAG','DIAG']
然後,我改變了我的遞歸函數的第二個最後一行
Result = [build_paths(m,n)].extend(Move[0])
我認爲在邏輯上是正確的,也就是我一直在延長我的名單,但最終,它只輸出
None
我無法弄清楚爲什麼會發生?