1
Pokaż ćwiczenia:
11
Ćwiczenie 1
R6dOpb2dYiDpP
Wybierz jedno nowe słowo poznane podczas dzisiejszej lekcji i ułóż z nim zdanie.
Źródło: Contentplus.pl Sp. z o.o., licencja: CC BY-SA 3.0.
RHA1KOxRv8qQ5
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.
Opis grafu:
Graf jest przedstawiony z wartościami krawędzi i oznaczonymi wierzchołkami. Od wierzchołka trzy prowadzi krawędź o długości szesnaćsie do wierchołka cztery i krawędź o długości trzy do wierzchołkac zero. Od wierzchołka cztery poprowadzono ścieżkę o długości trzy do wierzchołka dwa. Od wierzchołka dwa poprowadzona jest ściezka o długości jedenascie do wierzchołka zero, o długości jeden do wierchołka pięć, o długości jeden do wierzchołka jeden. Od wierzchołka jeden krawędź od długości jeden do wierzchołka pięć. Od wierzchołka pięć do wierzchołka sześć krawędź ma długość dwanaście. Od wierzchołka sześć poprowadzona jest krawędź o długości dziesięć do wierzchołka zero.
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. macierz podkreślnik sasiedztwa znak równości otwórz nawias kwadratowy. Linia 2. otwórz nawias kwadratowy 0 przecinek 5 przecinek 4 przecinek 2 przecinek 7 zamknij nawias kwadratowy przecinek. Linia 3. otwórz nawias kwadratowy 5 przecinek 0 przecinek 1 przecinek 0 przecinek 8 zamknij nawias kwadratowy przecinek. Linia 4. otwórz nawias kwadratowy 4 przecinek 1 przecinek 0 przecinek 22 przecinek 4 zamknij nawias kwadratowy przecinek. Linia 5. otwórz nawias kwadratowy 2 przecinek 0 przecinek 22 przecinek 0 przecinek 0 zamknij nawias kwadratowy przecinek. Linia 6. otwórz nawias kwadratowy 7 przecinek 8 przecinek 4 przecinek 0 przecinek 0 zamknij nawias kwadratowy. Linia 7. zamknij nawias kwadratowy. Linia 9. s znak równości 4.

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 zamknij nawias kwadratowy znak równości otwórz nawias kwadratowy 7 przecinek 5 przecinek 4 przecinek 9 przecinek 0 zamknij nawias kwadratowy. Linia 3. p otwórz nawias kwadratowy zamknij nawias kwadratowy znak równości otwórz nawias kwadratowy 4 przecinek 2 przecinek 4 przecinek 0 przecinek minus 1 zamknij nawias kwadratowy.
RxlJrSzIDLmTz
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. p znak równości otwórz nawias kwadratowy 4 przecinek 2 przecinek 4 przecinek 0 przecinek minus 1 zamknij nawias kwadratowy.

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. Sciezka do 0 dwukropek 4 0. Linia 2. Sciezka do 1 dwukropek 4 2 1. Linia 3. Sciezka do 2 dwukropek 4 2. Linia 4. Sciezka do 3 dwukropek 4 0 3. Linia 5. Sciezka do 4 dwukropek 4.
RUcV1h2yWm5oe
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. listaSasiedztwa znak równości otwórz nawias kwadratowy. Linia 2. otwórz nawias kwadratowy 3 przecinek 4 przecinek 1 przecinek 2 przecinek 5 przecinek minus 1 zamknij nawias kwadratowy przecinek. Linia 3. otwórz nawias kwadratowy 0 przecinek 2 przecinek 4 przecinek 5 przecinek 3 przecinek minus 1 zamknij nawias kwadratowy przecinek. Linia 4. otwórz nawias kwadratowy 3 przecinek minus 1 przecinek minus 1 przecinek minus 1 przecinek minus 1 przecinek minus 1 zamknij nawias kwadratowy przecinek. Linia 5. otwórz nawias kwadratowy 5 przecinek minus 1 przecinek minus 1 przecinek minus 1 przecinek minus 1 przecinek minus 1 zamknij nawias kwadratowy przecinek. Linia 6. otwórz nawias kwadratowy 1 przecinek 2 przecinek minus 1 przecinek minus 1 przecinek minus 1 przecinek minus 1 zamknij nawias kwadratowy przecinek. Linia 7. otwórz nawias kwadratowy 1 przecinek 2 przecinek minus 1 przecinek minus 1 przecinek minus 1 przecinek minus 1 zamknij nawias kwadratowy. Linia 8. zamknij nawias kwadratowy. Linia 10. s znak równości 4.

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 znak równości otwórz nawias kwadratowy 2 przecinek 1 przecinek 1 przecinek 2 przecinek 0 przecinek 2 zamknij nawias kwadratowy. Linia 3. p znak równości otwórz nawias kwadratowy 1 przecinek 4 przecinek 4 przecinek 1 przecinek minus 1 przecinek 1 zamknij nawias kwadratowy.
R1INEcx1lqj7z
Wymyśl pytanie na kartkówkę związane z tematem materiału.
RSFUEmIyx9mMx31
Ćwiczenie 5
Wymyśl pytanie na kartkówkę związane z tematem materiału.
31
Ćwiczenie 6
1
RXSCqeGvRo3J831
Oznacz wagi krawędzi dla przedstawionego grafu, jeśli wiadomo, że algorytm Dijkstry dla pewnego wierzchołka zwrócił następujące wyniki:

d[] = [28, 17, 30, 35, 0, 16]
p[] = [1, 4, 5, 1, -1, 4]

Tablica d[] zawiera długości ścieżek do kolejnych wierzchołków, a tablica p[] – poprzedniki tych wierzchołków.
Źródło: Contentplus.pl sp. z o.o., licencja: CC BY-SA 3.0.
RKMm45nPHJNek
Wskaż wagę ostatniej krawędzi dla opisanego grafu, jeśli wiadomo, że algorytm Dijkstry dla pewnego wierzchołka zwrócił następujące wyniki:

d[] = [28, 17, 30, 35, 0, 16]
p[] = [1, 4, 5, 1, -1, 4]

Tablica d[] zawiera długości ścieżek do kolejnych wierzchołków, a tablica p[] – poprzedniki tych wierzchołków.Graf składa się z sześciu wierzchołków. U dołu od wierzchołka zero poprowadzona linia pozioma do wierzchołka jeden to krawędź o wadze równej jedenaście. Od wierzchołka jeden linia pionowa, do góry do wierzchołka cztery to krawędź o wadze siedemnaście. Od wierzchołka cztery pozioma linia poprowadzona w lewo do wierzchołka pięć to krawędź o wadze szesnaście. Dalej od wierzchołka pięć do wierzchołka dwa, znajdującego się po prawej stronie na wysokości wierzchołków zero i jeden, poprowadzona jest krawędź o wadze czternaście. Od wierzchołka dwa linia pionowa poprowadzona do góry, pionowo do wierzchołka trzy to krawędź o wadze dziewiętnaście. Od wierzchołka trzy linia poprowadzona jest po skosie w dół do wierzchołka jeden. To ostatnia krawędź o wadze równej...