11
Pokaż ćwiczenia:
RQK2jK1N4AxSi1
Ćwiczenie 1
Wymyśl pytanie na kartkówkę związane z tematem materiału.
RKaxxqCU867J71
Ćwiczenie 2
Wymyśl pytanie na kartkówkę związane z tematem materiału.
Ćwiczenie 2

Uzupełnij tabelę będącą macierzą sąsiedztwa grafu, którego macierz incydencji ma następującą postać: A równa się, w macierzy zapisano: Linia 1: zero, zero, jeden, jeden, zero. Linia 2: zero, zero, zero, jeden, jeden. Linia 3: jeden, zero, zero, jeden, jeden. Linia 4: jeden, jeden, jeden, zero, jeden. Linia 5: zero, jeden, jeden, jeden, zero.

R5kpLuCgI7RXv
RB5qE0QT2xJzo1
Ćwiczenie 3
Połącz w pary reprezentację z jej rozmiarem. Maicerz sąsiedztwa Możliwe odpowiedzi: 1. zależy od stopnia każdego wierzchołka, 2. |E| par dwóch elementów, 3. |V|×|V|, 4. |V|×|E| Lista sąsiedztwa Możliwe odpowiedzi: 1. zależy od stopnia każdego wierzchołka, 2. |E| par dwóch elementów, 3. |V|×|V|, 4. |V|×|E| Macierz incydencji Możliwe odpowiedzi: 1. zależy od stopnia każdego wierzchołka, 2. |E| par dwóch elementów, 3. |V|×|V|, 4. |V|×|E| Lista krawędzi Możliwe odpowiedzi: 1. zależy od stopnia każdego wierzchołka, 2. |E| par dwóch elementów, 3. |V|×|V|, 4. |V|×|E|
RnInxEeBGjbfJ2
Ćwiczenie 4
Zaznacz każde zdanie prawdziwe. Możliwe odpowiedzi: 1. W grafie niezawierającym pętli i krawędzi wielokrotnych suma liczb elementów liczby sąsiadów w każdej liście sąsiadów jest zawsze parzysta., 2. W macierzy sąsiedztwa wiersz odpowiadający wierzchołkowi stopnia zerowego ma same zera., 3. Macierz sąsiedztwa niektórych przypadkach może mieć rozmiar |E|×|E|., 4. Suma wszystkich jedynek w macierzy sąsiedztwa jest równa podwojonej liczbie krawędzi.
R1ANMnAUVvngZ2
Ćwiczenie 5
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.
Ćwiczenie 5
RPiTPEp4hCX3p
R13IwlG5Aj9Uq21
Ćwiczenie 6
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.
31
Ćwiczenie 7

Dany jest graf nieskierowany bez wag. Napisz program, która przekształci macierz sąsiedztwa tego grafu w listę sąsiedztwa.

Specyfikacja problemu:

Dane:

  • macierz_sasiedztw – macierz liczb całkowitych

Wynik:

  • lista sąsiedztwa grafu

Przykładowe wyniki:

Linia 1. 0 dwukropek 1 2 3 4. Linia 2. 1 dwukropek 0 2 3 4. Linia 3. 2 dwukropek 0 1 4. Linia 4. 3 dwukropek 0 1 4. Linia 5. 4 dwukropek 0 1 2 3.

Przetestuj działanie programu dla następującej macierzy sąsiedztwa:

Linia 1. macierz podkreślnik sasiedztwa znak równości otwórz nawias kwadratowy. Linia 2. otwórz nawias kwadratowy 0 przecinek 1 przecinek 1 przecinek 1 przecinek 1 zamknij nawias kwadratowy przecinek. Linia 3. otwórz nawias kwadratowy 1 przecinek 0 przecinek 1 przecinek 1 przecinek 1 zamknij nawias kwadratowy przecinek. Linia 4. otwórz nawias kwadratowy 1 przecinek 1 przecinek 0 przecinek 0 przecinek 1 zamknij nawias kwadratowy przecinek. Linia 5. otwórz nawias kwadratowy 1 przecinek 1 przecinek 0 przecinek 0 przecinek 1 zamknij nawias kwadratowy przecinek. Linia 6. otwórz nawias kwadratowy 1 przecinek 1 przecinek 1 przecinek 1 przecinek 0 zamknij nawias kwadratowy. Linia 7. zamknij nawias kwadratowy.
R1WQeJRu96HVH
Wymyśl pytanie na kartkówkę związane z tematem materiału.
31
Ćwiczenie 8

Dany jest graf nieskierowany bez wag. Napisz program, który przekształci listę sąsiedztwa danego grafu w macierz incydencji.

Specyfikacja problemu:

Dane:

  • lista_sasiedztwa – macierz liczb całkowitych

Wynik:

  • macierz incydencji grafu

Przykładowe wyniki:

Linia 1. 1 1 1 1 0 0 0 0 0. Linia 2. 1 0 0 0 1 1 1 0 0. Linia 3. 0 1 0 0 1 0 0 1 0. Linia 4. 0 0 1 0 0 1 0 0 1. Linia 5. 0 0 0 1 0 0 1 1 1.

Przetestuj działanie programu dla następującej listy sąsiedztwa:

Linia 1. lista podkreślnik sasiedztwa znak równości otwórz nawias kwadratowy. Linia 2. otwórz nawias kwadratowy 1 przecinek 2 przecinek 3 przecinek 4 zamknij nawias kwadratowy przecinek. Linia 3. otwórz nawias kwadratowy 0 przecinek 2 przecinek 3 przecinek 4 zamknij nawias kwadratowy przecinek. Linia 4. otwórz nawias kwadratowy 0 przecinek 1 przecinek 4 zamknij nawias kwadratowy przecinek. Linia 5. otwórz nawias kwadratowy 0 przecinek 1 przecinek 4 zamknij nawias kwadratowy przecinek. Linia 6. otwórz nawias kwadratowy 0 przecinek 1 przecinek 2 przecinek 3 zamknij nawias kwadratowy. Linia 7. zamknij nawias kwadratowy.
R1SD71218siIg
Wybierz jedno nowe słowo poznane podczas dzisiejszej lekcji i ułóż z nim zdanie.
31
Ćwiczenie 9

Macierze sąsiedztwa dobrze sprawdzają się w reprezentacji grafów ważonych. Jeśli wagi krawędzi są różne od 0, wówczas tam, gdzie normalnie wstawilibyśmy 1, wpiszemy wagę krawędzi. Gdyby jednak graf zawierał wagę 0, to za brak połączenia uznajemy pewną liczbę waga rożną od wszystkich wag w grafie.

Podobnie jak macierz sąsiedztwa, także lista sąsiedztwa może służyć do prezentacji grafów ważonych. W takim wypadku wyrazy na liście sąsiadów danego wierzchołka będą parą uporządkowaną dwóch elementów: indeksu sąsiada oraz wagi krawędzi łączącej sąsiada z wierzchołkiem. Przykładowo: jeśli waga krawędzi ij wynosi 5, wówczas na liście listaSasiedztwa[i] powinna znaleźć się para [j, 5]. Graf domyślnie jest nieskierowany, więc analogicznie lista lista_sasiedztwa[j] zawiera parę [i, 5].

R1b8UlEnz7IDA
Źródło: Contentplus.pl Sp. z o.o., licencja: CC BY-SA 3.0.

Zdefiniowano listę krawędzi w postaci listy list składających się z trzech elementów, gdzie pierwszy i ostatni element każdej listy to indeksy sąsiednich wierzchołków, a element środkowy jest wagą krawędzi łączącej te wierzchołki. Twoim zadaniem jest zdefiniowanie następujących funkcji:

  1. Funkcja przeksztalc_krawedzie(krawedzie), która przekształci listę krawedzie w macierz sąsiedztwa macierz_sasiedztwa w wersji ważonej.

  2. Funkcja przeksztalc_macierz(macierz_sasiedztwa), która na podstawie macierzy sąsiedztwa macierz_sasiedztwa wstawi do listy sąsiedztwa lista_sasiedztwa sąsiadów każdego wierzchołka i.

Specyfikacja problemu:

Dane:

  • krawedzie – macierz liczb całkowitych

Wynik:

  • macierz sąsiedztwa oraz lista sąsiedztwa grafu

Przykładowe wyniki:

Linia 1. 0 2 3 6 4 5. Linia 2. 2 0 1 9 4 0. Linia 3. 3 1 0 0 0 7. Linia 4. 6 9 0 0 8 9. Linia 5. 4 4 0 8 0 1. Linia 6. 5 0 7 9 1 0. Linia 8. 0 dwukropek otwórz nawias kwadratowy 1 przecinek 2 zamknij nawias kwadratowy otwórz nawias kwadratowy 2 przecinek 3 zamknij nawias kwadratowy otwórz nawias kwadratowy 3 przecinek 6 zamknij nawias kwadratowy otwórz nawias kwadratowy 4 przecinek 4 zamknij nawias kwadratowy otwórz nawias kwadratowy 5 przecinek 5 zamknij nawias kwadratowy. Linia 9. 1 dwukropek otwórz nawias kwadratowy 0 przecinek 2 zamknij nawias kwadratowy otwórz nawias kwadratowy 2 przecinek 1 zamknij nawias kwadratowy otwórz nawias kwadratowy 3 przecinek 9 zamknij nawias kwadratowy otwórz nawias kwadratowy 4 przecinek 4 zamknij nawias kwadratowy. Linia 10. 2 dwukropek otwórz nawias kwadratowy 0 przecinek 3 zamknij nawias kwadratowy otwórz nawias kwadratowy 1 przecinek 1 zamknij nawias kwadratowy otwórz nawias kwadratowy 5 przecinek 7 zamknij nawias kwadratowy. Linia 11. 3 dwukropek otwórz nawias kwadratowy 0 przecinek 6 zamknij nawias kwadratowy otwórz nawias kwadratowy 1 przecinek 9 zamknij nawias kwadratowy otwórz nawias kwadratowy 4 przecinek 8 zamknij nawias kwadratowy otwórz nawias kwadratowy 5 przecinek 9 zamknij nawias kwadratowy. Linia 12. 4 dwukropek otwórz nawias kwadratowy 0 przecinek 4 zamknij nawias kwadratowy otwórz nawias kwadratowy 1 przecinek 4 zamknij nawias kwadratowy otwórz nawias kwadratowy 3 przecinek 8 zamknij nawias kwadratowy otwórz nawias kwadratowy 5 przecinek 1 zamknij nawias kwadratowy. Linia 13. 5 dwukropek otwórz nawias kwadratowy 0 przecinek 5 zamknij nawias kwadratowy otwórz nawias kwadratowy 2 przecinek 7 zamknij nawias kwadratowy otwórz nawias kwadratowy 3 przecinek 9 zamknij nawias kwadratowy otwórz nawias kwadratowy 4 przecinek 1 zamknij nawias kwadratowy.

Działanie programu przetestuj dla następującej tablicy (zaimplementowanej za pomocą listy list) krawedzie:

Linia 1. krawedzie znak równości otwórz nawias kwadratowy. Linia 2. otwórz nawias kwadratowy 1 przecinek 2 przecinek 0 zamknij nawias kwadratowy przecinek. Linia 3. otwórz nawias kwadratowy 2 przecinek 3 przecinek 0 zamknij nawias kwadratowy przecinek. Linia 4. otwórz nawias kwadratowy 3 przecinek 6 przecinek 0 zamknij nawias kwadratowy przecinek. Linia 5. otwórz nawias kwadratowy 4 przecinek 4 przecinek 0 zamknij nawias kwadratowy przecinek. Linia 6. otwórz nawias kwadratowy 5 przecinek 5 przecinek 0 zamknij nawias kwadratowy przecinek. Linia 7. otwórz nawias kwadratowy 2 przecinek 1 przecinek 1 zamknij nawias kwadratowy przecinek. Linia 8. otwórz nawias kwadratowy 3 przecinek 9 przecinek 1 zamknij nawias kwadratowy przecinek. Linia 9. otwórz nawias kwadratowy 4 przecinek 4 przecinek 1 zamknij nawias kwadratowy przecinek. Linia 10. otwórz nawias kwadratowy 5 przecinek 0 przecinek 1 zamknij nawias kwadratowy przecinek. Linia 11. otwórz nawias kwadratowy 3 przecinek 0 przecinek 2 zamknij nawias kwadratowy przecinek. Linia 12. otwórz nawias kwadratowy 4 przecinek 0 przecinek 2 zamknij nawias kwadratowy przecinek. Linia 13. otwórz nawias kwadratowy 5 przecinek 7 przecinek 2 zamknij nawias kwadratowy przecinek. Linia 14. otwórz nawias kwadratowy 4 przecinek 8 przecinek 3 zamknij nawias kwadratowy przecinek. Linia 15. otwórz nawias kwadratowy 5 przecinek 9 przecinek 3 zamknij nawias kwadratowy przecinek. Linia 16. otwórz nawias kwadratowy 5 przecinek 1 przecinek 4 zamknij nawias kwadratowy. Linia 17. zamknij nawias kwadratowy.
R75rvJmvkFiGU
Wybierz jedno nowe słowo poznane podczas dzisiejszej lekcji i ułóż z nim zdanie.