2012-06-25 17 views
7

Udawajmy, że mam następującą siatkę. Muszę połączyć pary liter. Nie tylko te same litery muszą być połączone, ale muszę też upewnić się, że ścieżki łączące się nie krzyżują. Jaki algorytm może mi powiedzieć, czy możliwe jest połączenie wszystkich par bez przecinania ścieżek i najkrótszej ścieżki?Jak połączyć dwa punkty bez przekraczania innej ścieżki?

Zdaję sobie sprawę, że jest to problem graficzny, a najkrótsza część ścieżki może zostać rozwiązana za pomocą BFS. Nie jestem pewien, co to są ścieżki skrzyżowania.

+---+---+---+---+---+---+---+---+ 
    | A | | | B | | | | | 
    +-------------------------------+ 
    | | | | | | | | | 
    +-------------------------------+ 
    | | | B | | | | D | | 
    +-------------------------------+ 
    | | | | | | | | | 
    +-------------------------------+ 
    | | C | | | C | | | | 
    +-------------------------------+ 
    | | | | A | | | | | 
    +-------------------------------+ 
    | | | | | | | D | | 
    +-------------------------------+ 
    | | | | | | | | | 
    +---+---+---+---+---+---+---+---+ 
+0

A * algorytm wyszukiwania powinny działać, ale byłoby trochę powolny – Nicolas

Odpowiedz

Powiązane problemy