1
Pokaż ćwiczenia:
1
Ćwiczenie 1
RKeBneMHltuQI
Źródło: Contentplus.pl sp. z o.o., licencja: CC BY-SA 3.0.
RvylmYNysQGCN
Wskaż wyniki, które algorytm Dijkstry zwróci dla przedstawionego grafu. Za wierzchołek początkowy przyjmujemy wierzchołek 3. Zaznacz wszystkie poprawne odpowiedzi.

Tablice d[] zawierają długości ścieżek do kolejnych wierzchołków, a tablice p[] – poprzedniki tych wierzchołków.
31
Ćwiczenie 2

Napisz program, który dla grafu reprezentowanego przez macierz sąsiedztwa wypisze dwie tablice – najkrótszych ścieżek do danych wierzchołków oraz poprzedników tych wierzchołków.

Działanie programu przetestuj dla następujących danych:

Linia 1. int macierzSasiedztwa otwórz nawias kwadratowy V zamknij nawias kwadratowy otwórz nawias kwadratowy V zamknij nawias kwadratowy znak równości otwórz nawias klamrowy. Linia 2. otwórz nawias klamrowy 0 przecinek 5 przecinek 4 przecinek 2 przecinek 7 zamknij nawias klamrowy przecinek. Linia 3. otwórz nawias klamrowy 5 przecinek 0 przecinek 1 przecinek 0 przecinek 8 zamknij nawias klamrowy przecinek. Linia 4. otwórz nawias klamrowy 4 przecinek 1 przecinek 0 przecinek 22 przecinek 4 zamknij nawias klamrowy przecinek. Linia 5. otwórz nawias klamrowy 2 przecinek 0 przecinek 22 przecinek 0 przecinek 0 zamknij nawias klamrowy przecinek. Linia 6. otwórz nawias klamrowy 7 przecinek 8 przecinek 4 przecinek 0 przecinek 0 zamknij nawias klamrowy. Linia 7. zamknij nawias klamrowy średnik. Linia 9. int s znak równości 4 średnik.

Specyfikacja problemu:

Dane:

  • s – wierzchołek początkowy grafu

  • macierzSasiedztwa – tablica dwuwymiarowa; macierz sąsiedztwa grafu

  • V – liczba naturalna dodatnia; liczba wierzchołków grafu

Wynik:

  • tablica przechowująca najkrótsze ścieżki od wierzchołka s do pozostałych wierzchołków oraz tablica przechowująca poprzedniki kolejnych wierzchołków

Wynik dla podanych danych:

Linia 1. Wynik algorytmu Dijkstry dwukropek. Linia 2. d otwórz nawias kwadratowy V zamknij nawias kwadratowy znak równości otwórz nawias klamrowy 7 5 4 9 0 zamknij nawias klamrowy. Linia 3. p otwórz nawias kwadratowy V zamknij nawias kwadratowy znak równości otwórz nawias klamrowy 4 2 4 0 minus 1 zamknij nawias klamrowy.
RsGn9gtsCejyG1
Wybierz jedno nowe słowo poznane podczas dzisiejszej lekcji i ułóż z nim zdanie.
31
Ćwiczenie 3

Napisz program, który dla danej tablicy poprzedników grafu wypisze kompletne ścieżki do kolejnych wierzchołków. Ścieżki powinny zaczynać się w wierzchołku początkowym, a kończyć na docelowym.

Działanie programu przetestuj dla następujących danych:

Linia 1. int p otwórz nawias kwadratowy V zamknij nawias kwadratowy znak równości otwórz nawias klamrowy 4 przecinek 2 przecinek 4 przecinek 0 przecinek minus 1 zamknij nawias klamrowy średnik.

Specyfikacja problemu:

Dane:

  • p – tablica poprzedników; tablica liczb całkowitych

  • V – liczba naturalna dodatnia; liczba wierzchołków grafu

Wynik:

  • komunikat dotyczący najkrótszych ścieżek do kolejnych wierzchołków

Wynik dla podanych danych:

Linia 1. Ścieżka do 0 dwukropek 4 0. Linia 2. Ścieżka do 1 dwukropek 4 2 1. Linia 3. Ścieżka do 2 dwukropek 4 2. Linia 4. Ścieżka do 3 dwukropek 4 0 3. Linia 5. Ścieżka do 4 dwukropek 4.
Ri8uUT2ehMlHI
Wymyśl pytanie na kartkówkę związane z tematem materiału.
31
Ćwiczenie 4

Zmodyfikuj program tak, by algorytm Dijkstry działał dla grafu, którego każda krawędź ma wagę równą 1.

Działanie programu przetestuj dla następujących danych:

Linia 1. int listaSasiedztwa otwórz nawias kwadratowy V zamknij nawias kwadratowy otwórz nawias kwadratowy maksymalnieSasiadow zamknij nawias kwadratowy znak równości otwórz nawias klamrowy. Linia 2. otwórz nawias klamrowy 3 przecinek 4 przecinek 1 przecinek 2 przecinek 5 przecinek minus 1 zamknij nawias klamrowy przecinek. Linia 3. otwórz nawias klamrowy 0 przecinek 2 przecinek 4 przecinek 5 przecinek 3 przecinek minus 1 zamknij nawias klamrowy przecinek. Linia 4. otwórz nawias klamrowy 3 przecinek minus 1 przecinek minus 1 przecinek minus 1 przecinek minus 1 przecinek minus 1 zamknij nawias klamrowy przecinek. Linia 5. otwórz nawias klamrowy 5 przecinek minus 1 przecinek minus 1 przecinek minus 1 przecinek minus 1 przecinek minus 1 zamknij nawias klamrowy przecinek. Linia 6. otwórz nawias klamrowy 1 przecinek 2 przecinek minus 1 przecinek minus 1 przecinek minus 1 przecinek minus 1 zamknij nawias klamrowy przecinek. Linia 7. otwórz nawias klamrowy 1 przecinek 2 przecinek minus 1 przecinek minus 1 przecinek minus 1 przecinek minus 1 zamknij nawias klamrowy. Linia 8. zamknij nawias klamrowy średnik. Linia 10. int s znak równości 4 średnik.

Specyfikacja problemu:

Dane:

  • listaSasiedztwa – tablica dwuwymiarowa; lista sąsiedztwa grafu

  • s – wierzchołek początkowy grafu

  • V – liczba naturalna dodatnia; liczba wierzchołków grafu

Wynik:

  • tablica przechowująca najkrótsze ścieżki od wierzchołka s do pozostałych wierzchołków oraz tablica przechowująca poprzedniki kolejnych wierzchołków

Wynik dla podanych danych:

Linia 1. Wynik algorytmu Dijkstry dwukropek. Linia 2. d otwórz nawias kwadratowy V zamknij nawias kwadratowy znak równości otwórz nawias klamrowy 2 1 1 2 0 2 zamknij nawias klamrowy. Linia 3. p otwórz nawias kwadratowy V zamknij nawias kwadratowy znak równości otwórz nawias klamrowy 1 4 4 1 minus 1 1 zamknij nawias klamrowy.
R1u03vGb192D21
Wymyśl pytanie na kartkówkę związane z tematem materiału.
RUjU2tvnUNdd931
Ćwiczenie 5
Jakich wyników algorytm Dijkstry na pewno nie zwróci? Możliwe odpowiedzi: 1. d[] = [7, 5, 4, 6, 0]
prev[] = [4, 2, 4, 2, -1], 2. d[] = [10, 5, 4, 6, 0]
prev[] = [4, 2, 4, 2, 2], 3. d[] = [10, 5, 4, 6, 0, 11, 12]
prev[] = [4, 2, 4, 2, -1, 4, 5], 4. d[] = [10, 5, 4, 6, -1, 11, 12, 1]
prev[] = [4, 2, 4, 2, -1, 4, 5, 0]
1
R1UyOLwJ2yDDD31
Ćwiczenie 6
Ilustracja przedstawia graf z pustymi wartościami krawędzi.
U dołu od wierzchołka zero poprowadzona linia pozioma do wierzchołka jeden. Od wierzchołka jeden linia pionowa, do góry do wierzchołka cztery. Od wierzchołka cztery pozioma linia poprowadzona w lewo do wierzchołka pięć. Dalej od piątki do wierzchołka dwa, znajdującego się po prawej stronie na wysokości wierzchołków zero i jeden. Od wierzchołka dwa linia pionowa poprowadzona do góry, pionowo do wierzchołka trzy. Od wierzchołka trzy linia poprowadzona jest po skosie w dół do wierzchołka jeden.
Źródło: Contentplus.pl Sp. z o.o., licencja: CC BY-SA 3.0.
3
Ćwiczenie 6
RJFFlS9H7w7VB