我想列出图中一个节点的所有终端节点,我的代码可以工作,但是在复杂的图中它不能有效工作。正如你所看到的,我使用的递归在处理复杂的图形时效率不高
def neighbourt(T,item,st1,list1,list2):
for n1 in T.neighbors(item):
if n1 > item and T.degree(n1)> 1:
#print(n1)
st1=st1+neighbourt(T,n1,st1,list1,list2)
elif n1 > item and T.degree(n1)==1:
fruit_dictionary1 = dict(zip(list1,list2))
ab=fruit_dictionary1[n1]
st1=st1+str(ab)+"_"
#return st1
return st1
代码是用python编写的,item是节点,T是无向图
任何建议都会有帮助
以下代码应执行相同的操作,但不使用递归:
例如,对于图T:
相关问题 更多 >
编程相关推荐