При условии ввода графа и списка вершин, является ли список вершин путем в графе?
G = [['a', 'b' , 'c' , 'd' , 'e' , 'f' , 'g' , 'h', 'i', 'j'],
[({'a', 'b'}, 4), ({'a', 'c'}, 6), ({'a', 'd'}, 8), ({'b', 'e'}, 1) ,
({'b', 'f'}, 9), ({'c', 'f'}, 3), ({'d', 'g'}, 7), ({'d', 'h'}, 0) ,
({'e', 'i'}, 1), ({'e', 'j'}, 5), ({'g', 'h'}, 2), ({'i', 'j'}, 4)]]
L1 = ['a', 'd', 'h', 'g']
Как лучше всего решить эту проблему?
РЕДАКТИРОВАТЬ
Теперь это решено - с помощью Эймери.
def edges(G):
edgeset = [tuple(sorted(x[0])) for x in G[1]]
return edgeset
def is_a_path(G,L,edgeset):
for i in range(len(L)-1):
a= tuple(sorted((L[i], L[i+1])))
print(edgeset, a)
if a not in edgeset:
return False
return True