Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Kolejka, stworzenie mapy miast

Ostatnio zmodyfikowano 2014-03-16 11:59
Autor Wiadomość
Kot
Temat założony przez niniejszego użytkownika
Kolejka, stworzenie mapy miast
» 2014-03-04 12:06:47
Czy za pomocą kolejki mogę stworzyć mapę miast o zadanych wymiarach?

Np. wpisuje, że ma być 4x4 i tworzy się takie coś:

A----B----C----D
|    |    |    |
E----F----G----H
|    |    |    |
I----J----K----L
|    |    |    |
M----N----O----P

Chodzi mi w sumie głównie o to, jak się w ogóle za coś takiego zabrać. W poleceniu mam podpowiedź, żeby użyć kolejki, ale jakoś mi się to nie łączy. I chcę się upewnić, czy na pewno w dobrym miejscu szukam rozwiązania.
P-105599
akwes
» 2014-03-04 12:55:47
Ścieżkę (ścieżkę przejścia grafu) masz przechowywać w kolejce czy mapę miast? Czy nic nie wiesz a po prostu masz użyć kolejki? Poczytaj o standardowych kontenerach (strukturach danych) bo widać, że o kolejkach nie wiesz nic (do czego sam się przyznałeś). To co przedstawiłeś to graf. Graf można przechowywać dowolnie. Kwestia czy to będzie miało sens i będzie wygodne w używaniu. Poczytaj o postaci macierzowej grafów. Wtedy będziesz mógł je trzymać w dwuwymiarowej tablicy.
P-105601
Kot
Temat założony przez niniejszego użytkownika
» 2014-03-04 18:58:40
Chyba ma być dokładnie tak jak mówisz, że ścieżka przejścia grafu powinna być w kolejce przechowywana, a graf chyba najsensowniej będzie przechować w dwuwymiarowej dynamicznej tablicy.
Tylko mam problem z wyświetleniem mapy razem z drogami.
Bo na razie wyświetlam po prostu tak:
C/C++
for( int i = 0; i < w; i++ )
{
    cout << endl;
    for( int j = 0; j < k; j++ )
         cout << tab[ i ][ j ] << " ";
   
}

Chyba że już teraz to zły pomysł?

P-105641
akwes
» 2014-03-04 21:44:59
A co jest z tym wyświetlaniem nie tak? Jeżeli chodzi Ci o "grafikę" to zawsze możesz drukować dodatkowe "---" czy "|". Może sobie poprawić efekt sterując manipulatorami strumienia wejściowego (aby było zawsze ładne).

Aczkolwiek jak dla mnie wyświetlanie grafu w takiej formie jest niejasne. Dużo fajniej prezentuje się wspomniana wcześniej macierz sąsiedztwa.

Co więcej, w przypadku macierzy sąsiedztwa dla grafów skierowanych dużo prościej będzie je wypisać ponieważ wagi krawędzi w ASCII ART będą słabe. Zapewne Twój graf jest skierowany (albo będzie w dalszych częściach zadania) bo szukanie drogi między miastem A a miastem B w przypadku grafu nieskierowanego jest nudne i niepotrzebne. Natomiast na obliczenie najkrótszej drogi w grafie skierowanym jest dużo fajnych algorytmów, które właśnie operują na macierzy sąsiedztwa.
P-105657
Kot
Temat założony przez niniejszego użytkownika
» 2014-03-16 11:59:58
Dobrze, dziękuję za wskazówki. Zamykam temat.
P-106533
« 1 »
  Strona 1 z 1