这是我现在的代码:
hasht= {"A":["B", "D", "E"], "B":["C"], "C":["D", "E"], "D":["C", "E"], "E":["B"]}
paths=[]
def recusive(start, finish, val):
if start==finish and val!=1:
return start
else:
for i in hasht[start]:
path= start+ recusive(i,finish,2)
paths.append(path)
print (recusive("C","C",1))
print paths
期望的输出:[CDC, CDEBC, CEBC]
我正在尝试生成一个像上面那样的表,但是我遇到了字符串和数组没有被连接的问题。当我刚刚返回时,它会返回CDC
并工作,但它会退出函数,因为 return 意味着这样做。我想知道如何在这里改进我的代码以使其正常工作并找出我的逻辑错误的原因。例如,我知道它会生成 say [DC]
,但我对如何解决这个问题感到困惑。也许索引返回的值?然而这也不起作用!我只是对如何让路径返回CDC
,然后继续下一个感到困惑。