Bu kod, yönlendirilmiş grafikler için iki düğüm arasındaki bir yolu belirlemektir. piton yeni olmasıPython'un grafik teorisi makalelerindeki koddan bir soru
def find_path(graph, start, end, path=[]):
path = path + [start]
if start == end:
return path
if not graph.has_key(start):
return None
for node in graph[start]:
if node not in path:
newpath = find_path(graph, node, end, path)
if newpath: return newpath
return None
, iki küçük ve önemsiz soru var: This kodudur. Umarım buna aldırmazsın.
Q1. Kodun ikinci son satırında if newpath:
ne anlama geliyor?
Q2. Bu kod, yönlendirilen grafikte tüm olası yollarını veriyor mu?
Teşekkürler.
Teşekkür ederiz user507787. Hangi yolun olacağını söyleyebilir misin? Anahtarın ilk karşılaşılan değerinden mümkün olan yol bu mu? – Pupil
Vikipedi'deki İlk Arama ve İlk Aramada İlk Arama hakkında bilgi edinin. Yukarıdaki kod tarafından uygulanan algoritma DFS'dir, yani her düğümde kenarların geçiş sırası verilirse, ilgili diziyi (m0, m1, m2, ...) seçeriz. mo-th kenarı, başlangıçta, dizinin sözlükbilgisi sırasına göre en küçük olduğu şekilde. – user507787
Tamam. Teşekkürler :) – Pupil