Sprawdź się
int[]
, 2. std::pair<int,int>[]
, 3. std::pair<int,int>
, 4. int
wierzchołek Możliwe odpowiedzi: 1. int[]
, 2. std::pair<int,int>[]
, 3. std::pair<int,int>
, 4. int
krawędź Możliwe odpowiedzi: 1. int[]
, 2. std::pair<int,int>[]
, 3. std::pair<int,int>
, 4. int
graf Możliwe odpowiedzi: 1. int[]
, 2. std::pair<int,int>[]
, 3. std::pair<int,int>
, 4. int
krawedz2
, bool
, krawedz2
, first
, !=
, second
, krawedz1
, int, ==
. Polecenie: Uzupełnij funkcję czy_rowne()
sprawdzającą czy dwie krawędzie typu std::pait<int, int>
sa równe, tzn. czy łączę te same wierzchołki. Funckje zwraca odpowiednio wartosć true
lub false
. luka do uzupełnienia czy_rowne(std::pair<int, int> krawedz1, std::pair<int, int>
luka do uzupełnienia )
{
if (krawedz1.first == krawedz2.second)
{
return krawedz1.
luka do uzupełnienia
luka do uzupełnienia
luka do uzupełnienia .
luka do uzupełnienia ;
}
else
{
return
luka do uzupełnienia == krawedz2;
}
}
class klasa2{ int a, b; klasa2(int a, int b): a(a), b(b) {} };
, 2. class klasa1{ string nazwa; klasa1(string nazwa = ""): nazwa(nazwa) {} };
, 3. struct struktura2{ float a; float b; };
, 4. struct struktura1{ string name; };
, 5. int
, 6. std::pair<klasa1, klasa1>
, 7. std::pair<struktura1, struktura1>
, 8. float
Krawędzie Możliwe odpowiedzi: 1. class klasa2{ int a, b; klasa2(int a, int b): a(a), b(b) {} };
, 2. class klasa1{ string nazwa; klasa1(string nazwa = ""): nazwa(nazwa) {} };
, 3. struct struktura2{ float a; float b; };
, 4. struct struktura1{ string name; };
, 5. int
, 6. std::pair<klasa1, klasa1>
, 7. std::pair<struktura1, struktura1>
, 8. float
Napisz funkcję sprawdzającą, czy w grafie reprezentowanym przez listę krawędzi istnieje krawędź łącząca dane wierzchołki. Funkcja powinna zwracać indeks krawędzi w liście krawędzi lub -1, jeżeli taka krawędź nie istnieje. Krawędzie numerujemy od zera.
Swoje rozwiązanie przetestuj dla trzech par wierzchołków:
Specyfikacja problemu:
Dane:
krawedzie
– tablica krawędzi w grafie składająca się z par liczb całkowitych; indeksowana od zera
Wynik:
Program na wyjście standardowe wypisuje indeks znalezionej krawędzi lub -1, jeśli krawędź nie istnieje.
Przykładowe wyjście:
Napisz funkcję sprawdzającą, czy w grafie reprezentowanym przez listę krawędzi istnieje przekazana jako parametr droga. Działanie programu przetestuj dla następujących danych:
Specyfikacja problemu:
Dane:
krawedzie
– tablica krawędzi w grafie składająca się z par liczb całkowitychdroga1
– tablica liczb całkowitychdroga2
– tablica liczb całkowitych
Wynik:
Program na wyjście standardowe wypisuje 1, jeśli droga istnieje, lub 0, jeśli nie istnieje.
Napisz funkcję, która wypełni tablicę stopnie
wartościami stopni wierzchołków. Graf reprezentowany jest przez listę krawędzi. Każdy wierzchołek może pojawić się tylko raz. Działanie programu przetestuj dla następujących danych:
Specyfikacja problemu:
Dane:
krawedzie
– tablica krawędzi w grafie składająca się z par liczb całkowitychwierzcholki
– tablica wierzchołków w grafie; tablica liczb całkowitych
Wynik:
Program wypisuje stopnie kolejnych wierzchołków.
Napisz funkcję, która zapisze w tablicy sasiedzi
wszystkie sąsiednie wierzchołki dla danego wierzchołka grafu. Każdy sąsiad może pojawić się tylko raz. Indeksy sąsiadów mają być posortowane rosnąco. Dodatkowo funkcja powinna zwrócić stopień wierzchołka podanego jako parametr. Działanie programu przetestuj dla wierzchołka o indeksie 1.
Specyfikacja problemu:
Dane:
krawedzie
– tablica krawędzi w grafie składająca się z par liczb całkowitych
Wynik:
Program na wyjście standardowe wypisuje indeksy sąsiednich wierzchołków, oddzielone spacjami.
Napisz funkcję, która wypisze listę wierzchołków grafu wraz ze wszystkimi ich sąsiadami. Działanie programu przetestuj dla następujących danych:
Specyfikacja problemu:
Dane:
krawedzie
– tablica krawędzi w grafie składająca się z par liczb całkowitychwierzcholki
– tablica wierzchołków w grafie; tablica liczb całkowitych
Wynik:
Program na wyjście standardowe wypisuje w kolejnych wierszach indeksy wierzchołków oraz po dwukropku indeksy sąsiadów danego wierzchołka.