Python:使用邻接表获取节点的步骤数

时间:2018-12-05 21:14:51

标签: python-3.x nodes adjacency-list

adj_list = {1:[2,4],2:[1,3,4,8],3:[2,6,8,7],4:[1,5,2],5: [4,6],6:[3,9,5],7:[3,8,9,10],8:[2,3,7],9:[6,7,10],10: [7,9]}

但是我想要这样的结果:>> func(1,10):1-2-3-7-10(4)或1-2-8-7-10(4) 4不应是1到10的步数

def func(x,y):
t=0
xx=x
global i
for i in range(len(adj_list[xx])):
    if y in adj_list[xx]:
        t=t+1
        # print(x,y,t)
        break
    else:
        if xx<y:
            t = t + 1
            xx = xx + 1
    i=0
print(x,y,t)

func(1,6)

0 个答案:

没有答案