Diskrétní matematika. DiM /01, zimní semestr 2018/2019

Podobné dokumenty
Diskrétní matematika. DiM /01, zimní semestr 2016/2017

TGH02 - teorie grafů, základní pojmy

10 Podgrafy, isomorfismus grafů

TGH02 - teorie grafů, základní pojmy

TGH02 - teorie grafů, základní pojmy

Diskrétní matematika. DiM /01, zimní semestr 2017/2018

4 Pojem grafu, ve zkratce

Úvod do Teorie grafů Petr Kovář

Grafy. RNDr. Petra Surynková, Ph.D. Univerzita Karlova v Praze Matematicko-fyzikální fakulta.

Úvod do Teorie grafů Petr Kovář

Diskrétní matematika. DiM /01, zimní semestr 2016/2017

Základy informatiky. Teorie grafů. Zpracoval: Pavel Děrgel Úprava: Daniela Szturcová

Diskrétní matematika. DiM /01, zimní semestr 2018/2019

H {{u, v} : u,v U u v }

Diskrétní matematika. DiM /01, zimní semestr 2018/2019

Diskrétní matematika. DiM /01, zimní semestr 2018/2019

Základní pojmy teorie grafů [Graph theory]

5 Orientované grafy, Toky v sítích

Diskrétní matematika. DiM /01, zimní semestr 2015/2016

Základy informatiky. 07 Teorie grafů. Kačmařík/Szturcová/Děrgel/Rapant

Grafy. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava. Prezentace ke dni 13.

Diskrétní matematika. DiM /01, zimní semestr 2018/2019

Teorie grafů BR Solutions - Orličky Píta (Orličky 2010) Teorie grafů / 66

Teorie grafů. Teoretická informatika Tomáš Foltýnek

TEORIE GRAFŮ TEORIE GRAFŮ 1

Úvod do informatiky. Miroslav Kolařík

9 Stupně vrcholů, Věta Havla-Hakimiho

Matematická analýza 1

Algoritmizace prostorových úloh

Modely teorie grafů, min.kostra, max.tok, CPM, MPM, PERT

Učební texty k státní bakalářské zkoušce Matematika Diskrétní matematika. študenti MFF 15. augusta 2008

Hlavolamy a teorie grafů

Množiny, relace, zobrazení

Úvod do teorie grafů

Jan Březina. 7. března 2017

Obsah prezentace. Základní pojmy v teorii o grafech Úlohy a prohledávání grafů Hledání nejkratších cest

B i n á r n í r e l a c e. Patrik Kavecký, Radomír Hamřík

Definice 5.1 Graf G = (V, E) je tvořen množinou vrcholů V a množinou hran, kde

4 Stromy a les. Definice a základní vlastnosti stromů. Kostry grafů a jejich počet.

GRAFY A GRAFOVÉ ALGORITMY

Pojem binární relace patří mezi nejzákladnější matematické pojmy. Binární relace

Teorie grafů. zadání úloh. letní semestr 2008/2009. Poslední aktualizace: 19. května First Prev Next Last Go Back Full Screen Close Quit

Kapitola 1. Relace. podle definice podmnožinou každé množiny. 1 Neříkáme už ale, co to je objekt. V tom právě spočívá intuitivnost našeho přístupu.

Teorie grafů Jirka Fink

2. ZÁKLADY MATICOVÉ ALGEGRY 2.1. ZÁKLADNÍ POJMY

Zadání a řešení testu z matematiky a zpráva o výsledcích přijímacího řízení do magisterského navazujícího studia od podzimu 2015

Vektory a matice. Obsah. Aplikovaná matematika I. Carl Friedrich Gauss. Základní pojmy a operace

Pro každé formule α, β, γ, δ platí: Pro každé formule α, β, γ platí: Poznámka: Platí právě tehdy, když je tautologie.

Základy matematiky pro FEK

Učební texty k státní bakalářské zkoušce Matematika Teorie grafů. študenti MFF 15. augusta 2008

Definice 1 eulerovský Definice 2 poloeulerovský

VLASTNOSTI GRAFŮ. Doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky, FIT České vysoké učení technické v Praze. BI-GRA, LS 2010/2011, Lekce 5

Vektorové podprostory, lineární nezávislost, báze, dimenze a souřadnice

VI. Maticový počet. VI.1. Základní operace s maticemi. Definice. Tabulku

Teorie grafů. Kostra grafu. Obsah. Radim Farana Podklady pro výuku pro akademický rok 2013/2014

0.1 Úvod do lineární algebry

autorovu srdci... Petr Hliněný, FI MU Brno 1 FI: MA010: Průnikové grafy

Operační výzkum. Síťová analýza. Metoda CPM.

Kolik existuje různých stromů na pevně dané n-prvkové množině vrcholů?

(Cramerovo pravidlo, determinanty, inverzní matice)

2. přednáška 8. října 2007

fakulty MENDELU v Brně (LDF) s ohledem na disciplíny společného základu (reg. č. CZ.1.07/2.2.00/28.

Výhody a nevýhody jednotlivých reprezentací jsou shrnuty na konci kapitoly.

Lineární algebra Operace s vektory a maticemi

Přijímací zkouška - matematika

1 Vektorové prostory.

PQ-stromy a rozpoznávání intervalových grafů v lineárním čase

Hledáme efektivní řešení úloh na grafu

0.1 Úvod do lineární algebry

LDF MENDELU. Simona Fišnarová (MENDELU) Základy lineárního programování VMAT, IMT 1 / 25

MATICE. a 11 a 12 a 1n a 21 a 22 a 2n A = = [a ij]

MATEMATIKA A 3 Metodický list č. 1

Pojem relace patří mezi pojmy, které prostupují všemi částmi matematiky.

1 Linearní prostory nad komplexními čísly

Grafové algoritmy. Programovací techniky

07 Základní pojmy teorie grafů

Grafové algoritmy. Programovací techniky

4EK311 Operační výzkum. 5. Teorie grafů

Cvičení z Lineární algebry 1

Vrcholová barevnost grafu

Drsná matematika III 10. demonstrovaná cvičení Kostry grafů

Funkce, elementární funkce.

Organizace. Zápočet: test týden semestru (pátek) bodů souhrnný test (1 pokus) Zkouška: písemná část ( 50 bodů), ústní část

10. Soustavy lineárních rovnic, determinanty, Cramerovo pravidlo

Operace s maticemi. 19. února 2018

Učební texty k státní bakalářské zkoušce Matematika Vlastní čísla a vlastní hodnoty. študenti MFF 15. augusta 2008

Fakulta elektrotechniky a informatiky Vysoká škola báňská - Technická univerzita Ostrava. Diskrétní matematika 2012/2013.

Výroková a predikátová logika - II

Lineární algebra. Matice, operace s maticemi

Zadání a řešení testu z matematiky a zpráva o výsledcích přijímacího řízení do magisterského navazujícího studia od jara 2014

1 Řešení soustav lineárních rovnic

Matematika (CŽV Kadaň) aneb Úvod do lineární algebry Matice a soustavy rovnic

DEFINICE Z LINEÁRNÍ ALGEBRY

10 Přednáška ze

Zadání a řešení testu z matematiky a zpráva o výsledcích přijímacího řízení do magisterského navazujícího studia od jara 2016

Stromové rozklady. Definice 1. Stromový rozklad grafu G je dvojice (T, β) taková, že T je strom,

Výroková a predikátová logika - II

Kapitola 11. Vzdálenost v grafech Matice sousednosti a počty sledů

[1] Determinant. det A = 0 pro singulární matici, det A 0 pro regulární matici

Determinanty. Obsah. Aplikovaná matematika I. Pierre Simon de Laplace. Definice determinantu. Laplaceův rozvoj Vlastnosti determinantu.

Transkript:

Diskrétní matematika Petr Kovář petr.kovar@vsb.cz Vysoká škola báňská Technická univerzita Ostrava DiM 470-2301/01, zimní semestr 2018/2019

O tomto souboru Tento soubor je zamýšlen především jako pomůcka pro přednášejícího. Řadu důležitých informací v souboru nenajdete, protože přednášející je říká, ukazuje, případně maluje na tabuli. Přednášky jsou na webu k dispozici, aby studenti mohli snadno dohledat probíraná témata z přednášek, které zameškali. Pro samostatné studium doporučuji skripta: M. Kubesa: Základy diskrétní matematiky, výukový text P. Kovář: Úvod do teorie grafů, výukový text Pro přípravu ke zkoušce a písemkám doporučuji cvičebnici: P. Kovář: Cvičení z diskrétní matematiky, sbírka příkladů Vše na http://homel.vsb.cz/~kov16/predmety dm.php

Přehled přednášky Kapitola Pojem grafu Část II Úvod do Teorie Grafů motivace definice grafu orientované grafy a multigrafy stupeň vrcholu v grafu podgrafy a izomorfismus implementace grafů

Pojem grafu Teorie grafů je jednou z mladších disciplin matematiky L. Euler: Problém mostů města Královce 1736 První monografie 1936 Populární problémy teorie grafů problém čtyř barev nejkratší cesta v grafu největší tok v grafu

Motivace Grafy tvoří jednu z nejdůležitějších disciplin diskrétní matematiky pomocí grafů můžeme dobře popsat praktické problémy intuitivně pochopitelné snadná implementace v počítači Neformálně: graf se skládá z vrcholů (uzlů) puntíky body v obrázku hran spojnice v obrázku Ukázky grafů.

Různé obrázky (nakreslení grafu) mohou reprezentovat tentýž graf. Různá nakreslení téhož grafu. Na první nemusí být snadné poznat, zda dva různé obrázky (dvě různá nakreslení) odpovídají stejnému grafu nebo ne.

Definice grafu Definice Graf G (jednoduchý graf, obyčejný graf) je uspořádaná dvojice G = (V, E), kde V je neprázdná množina vrcholů a E je množina hran množina (některých) dvouprvkových podmnožin množiny V. Příklad Graf G = (V, E), kde V = {v, w, x, y} a E = { {v, w}, {v, x}, {v, y}, {w, x} } : x y v w Prvky množiny V nazýváme vrcholy, značíme je malými písmeny u, v,.... Prvky množiny E nazýváme hrany. Hrana mezi vrcholy u a v je dvouprvková podmnožiny {u, v}, značíme ji zkráceně uv.

Příklad Graf G = (V, E), kde V = {v 1, v 2, v 3, v 4, v 5, v 6, v 7, v 8 } a E = {v 1 v 2, v 1 v 3, v 1 v 4, v 1 v 5, v 2 v 3, v 2 v 4, v 2 v 6, v 3 v 5, v 3 v 7, v 4 v 5, v 5 v 6, v 5 v 7, v 6 v 7 }. v 3 v 6 v 7 v 2 v 4 v 8 v 1 v5 Máme-li dán graf G, rozumíme symbolem V (G) množinu vrcholů grafu G a symbolem E(G) množinu hran grafu G. Poznámka Graf G = (V, E) můžeme chápat jako speciální relaci E na množině V, kde E je ireflexivní a symetrická.

Orientované grafy a multigrafy Pokud graf reprezentuje dopravní sít, silniční sít nebo jiný produktovod, může být užitečné použít orientaci hrany. Rozlišujeme výchozí a koncový vrchol. Orientovaná hrana uv není totožná s hranou vu. Definice Orientovaným grafem rozumíme uspořádanou dvojici G = (V, E), kde V je neprázdná množina vrcholů a množina orientovaných hran je E V V. V nakreslení znázorňujeme orientované hrany šipkami. v2 v 1 v 3 v 6 v 4 v 5 Příklad orientovaného grafu.

Poznámka Jednoduchý orientovaný graf G = (V, E) (bez smyček) můžeme chápat jako ireflexivní relaci na množině V. Poznámka Orientovaný graf G = (V, E), který může obsahovat smyčky, můžeme chápat jako (obecnou) relaci na množině V. Poznámka Ještě obecnější pojem než orientovaný graf, je multigraf. Povoĺıme vícenásobné hrany a smyčky. Orientovaným grafům se budeme věnovat v poslední kapitole...

Základní třídy grafů Grafy můžeme zadat množinami V a E obrázkem jménem a parametrem (parametry) Některé typy grafů se často vyskytují a dokonce mají své jméno: cesty stromy housenky ĺızátka knihy...

Úplný (kompletní) graf K n Graf na n vrcholech (n N), který obsahuje všech ( n 2) hran se nazývá úplný nebo také kompletní graf a značí se K n. K n = (V, E) : V = {1, 2,..., n}, E = {ij : i, j = 1, 2,... n i j} K 1 K 2 K 3 K 4 K 5 K 6 Triviální graf a kompletní grafy.

Cyklus (kružnice) C n Graf na n vrcholech (n 3), které jsou spojeny po řadě n hranami tak, že každý vrchol je spojen s následujícím vrcholem a poslední vrchol je navíc spojen s prvním vrcholem, se nazývá cyklus na n vrcholech a značí se C n. Číslo n je délka cyklu C n. C n = (V, E) : V = {1, 2,..., n}, E = {i(i+1): i = 1, 2,... n 1} {1n} C 3 C 4 C 5 C 6 Cykly C 3, C 4, C 5 a C 6. Cyklu délky tři říkáme trojúhelník.

Cesta P n Graf na n vrcholech, které jsou spojeny po řadě n 1 hranami se nazývá cesta a značí se P n. P n = (V, E) : V = {1, 2,..., n}, E = {i(i + 1): i = 1, 2,... n 1} P 1 P 2 P 3 P 4 P 5 Cesty P 1, P 2, P 3, P 4 a P 5. Pozor na možné jiné značení cest někdy index = počet hran V některých knihách se používá termín had.

Úplný (kompletní) bipartitní graf K m,n Graf, který má vrcholovou množinu rozdělenu na dvě neprázdné disjunktní podmnožiny M a N ( M = m, N = n) a který obsahuje všech m n hran uv takových, že u M a v N, nazýváme kompletní (úplný) bipartitní graf a značíme jej K m,n. K m,n = (M N, E) : M = {u 1, u 2,..., u m }, N = {v 1, v 2,..., v n }, M, N, M N =, E = {u i v j : i = 1, 2,..., m j = 1, 2,... n}. Graf K 4,5.

Stupeň vrcholu v grafu Máme-li hranu uv, pak vrcholy u a v nazýváme koncové vrcholy hrany uv. Také říkáme, že u a v jsou incidentní s hranou uv (tedy u {u, v}). Dva různé vrcholy, které jsou koncovými vrcholy téže hrany nazýváme sousední. Pokud taková hrana neexistuje, nazýváme vrcholy nesousední nebo také nezávislé. Definice Stupeň vrcholu v grafu G je počet hran, se kterými je daný vrchol incidentní. Stupeň vrcholu x v grafu G značíme deg(x) (nebo také deg G (x)). v 2 v 3 v 6 v 4 v 5 v 7 v 1 Graf se stupni vrcholů po řadě 5, 1, 3, 3, 4, 4 a 0.

Věta (Princip sudosti) Součet stupňů v grafu je vždy sudý a je roven dvojnásobku počtu hran. deg G (v) = 2 E(G) v V (G) Důkaz Metodou dvojího počítání všech koncových vrcholů hran. Levá strana: každý stupeň vyjadřuje, kolika hran je daný vrchol koncovým vrcholem, započítáme všechny. Naproti tomu každá hrana má právě dva koncové vrcholy, proto koncových vrcholů je 2 E (pravá strana výrazu). Proto je součet stupňů vždy sudý a je roven dvojnásobku počtu hran. Otázka Kolik hran má graf se stupni vrcholů 5, 4, 4, 3, 3, 2, 1?

Příklad Kolik hran má graf G, který má třicet vrcholů stupně 5 a pět vrcholů stupně 4? Podle principu sudosti víme, že dvojnásobek počtu hran je roven součtu stupňů. deg G (v) = 30 5 + 5 4 = 150 + 20 = 170 v V (G) Je zřejmé, že graf G má 170/2 = 85 hran. Existuje? Ukážeme později. Příklad Kolik hran má graf G, který má pět vrcholů stupně 5 a třicet vrcholů stupně 4? Postupujeme stejně... deg G (v) = 5 5 + 30 4 = 145 v V (G) Takový graf podle principu sudosti neexistuje!

Příklad Devět kamarádů si na Vánoce dalo dárky. Každý dal dárky třem svým kamarádům. Ukažte, že není možné, aby každý dostal dárky právě od těch tří kamarádů, kterým dárky sám dal. Návod: ukažte, že neexistuje graf, který by danou situaci modeloval. Sestavíme graf: vrcholy=kamarádi, hrany=vyměněné dárky. deg G (v) = 9 3 = 27 v V (G) Protože neexistuje graf, který by danou situaci modeloval, tak úloha nemá řešení. Neexistuje taková výměna dárků, aby každý z devíti kamarádů dostal dárky právě od těch tří kamarádů, kterým dárky sám dal.

Definice Mějme graf G s vrcholy v 1, v 2,..., v n. Posloupnost stupňů vrcholů (deg(v 1 ), deg(v 2 ),..., deg(v n )) nazýváme stupňovou posloupností grafu G. Ne každá posloupnost je stupňovou posloupností nějakého grafu. Jak poznáme? Věta Havlova Hakimiho Necht (d 1 d 2 d n ) je posloupnost nezáporných celých čísel. Pak existuje netriviální graf s n vrcholy se stupňovou posloupností D = (d 1, d 2,..., d n ) existuje graf s n 1 vrcholy se stupňovou posloupností D = (d 2 1, d 3 1,..., d d1 +1 1, d d1 +2, d d1 +3,..., d n ). Protože se zajímáme jen o konečné grafy, umíme rekurzivně o každé posloupnosti v konečném čase rozhodnout, zda je stupňovou posloupností nějakého grafu. Navíc budeme umět příklad takového grafu sestrojit (nemusí být jediný!).

Příklad Existuje graf se stupňovou posloupností (3, 3, 3, 1, 1)? Neexistuje dle Principu sudosti. Příklad Existuje graf se stupňovou posloupností (3, 3, 3, 1)? Ne, což ukážeme užitím Věty Havla-Hakimiho. Ze stupňové posloupnosti (3, 3, 3, 1) dostaneme (3, 3, 3, 1) HH (2, 2, 0) HH (1, 1) což evidentně není stupňová posloupnost. Příklad Existuje graf se stupňovou posloupností (6, 4, 4, 1, 1)? Takový graf neexistuje, což je zřejmé. Pokud nevíte proč, ověřte užitím Věty Havla-Hakimiho.

Příklad Existuje graf se stupňovou posloupností (6, 5, 4, 3, 3, 2, 1)? Ano, ukážeme užitím Věty H-H a navíc graf zkonstruujeme. Ze stupňové posloupnosti (6, 5, 4, 3, 3, 2, 1) dostaneme (6, 5, 4, 3, 3, 2, 1) HH (4, 3, 2, 2, 1, 0) HH (2, 1, 1, 0, 0) HH (0, 0, 0, 0). Konstrukce grafu: přidáváním vrcholů. Nejprve nakresĺıme graf se stupňovou posloupností (0, 0, 0, 0).

pokračování... Dále přidáme vrchol stupně 2 a spojíme jej se dvěma vrcholy stupně 0 (vzniknou vrcholy stupně 1). Dostaneme graf se stupňovou posloupností (2, 1, 1, 0, 0). Abychom dostali graf se stupňovou posloupností (4, 3, 2, 2, 1, 0), přidáme vrchol stupně 4 a spojíme jej s vrcholy stupňů 2, 1, 1 a 0.

pokračování... Nakonec přidáme vrchol stupně 6 a spojíme jej hranami se všemi zbývajícími vrcholy. Dostaneme graf se stupňovou posloupností (6, 5, 4, 3, 3, 2, 1). Shrnutí: pomocí věty Havla-Hakimiho umíme rozhodnout, zda daná konečná posloupnost přirozených čísel je stupňovou posloupností, pokud ano, najít příklad takového grafu.

Definice Největší stupeň vrcholů v grafu G označujeme (G). Nejmenší stupeň označujeme δ(g). Otázky Je každá nerostoucí posloupnost přirozených čísel grafová? Jak poznáme, zda posloupnost je stupňovou posloupností nějakého grafu? Je graf určen stupňovou posloupností jednoznačně? Kolik existuje grafů s danou stupňovou posloupností?

Podgrafy Často uvažujeme případy, kdy z daného grafu vynecháme některé vrcholy (a hrany s nimi incidentní), nebo vynecháme hrany, případně obojí. Definice Graf H nazveme podgrafem grafu G, jestliže V (H) V (G) a E(H) E(G). Píšeme H G. Všimněte si: vynecháme-li z G některý vrchol, musíme současně vynechat i všechny hrany s ním incidentní. Definice je v tomto smyslu korektní, nebot pokud bychom vynechali jen vrcholy a nikoli hrany, H by nebyl graf. Příklad Graf G a jeho podgrafy H 1 a H 2.

Indukovaný podgraf Podgraf I grafu G nazveme indukovaným podgrafem grafu G, jestliže E(I ) obsahuje všechny hrany grafu G, které jsou incidentní s vrcholy z V (I ). (Vynecháme pouze hrany, které byli incidentní s vynechanými vrcholy.) Příklad Faktor grafu Graf G a podgrafy H 1 (indukovaný) a H 2 (není indukovaný). Podgraf F grafu G nazveme faktorem grafu G, jestliže V (F ) = V (G).

Isomorfismus grafů Definice Isomorfismus grafů G a H je bijektivní zobrazení f : V (G) V (H), pro které platí, že každé dva vrcholy u, v v grafu G jsou sousední právě tehdy, když jsou sousední jejich obrazy f (u), f (v) v grafu H. Stručně u, v V (G) : uv E(G) f (u)f (v) E(H). Příklad v 1 f(v 1 ) v 2 v 5 f(v 4 ) f(v 3 ) g(v 1 ) g(v 4) g(v 2 ) g(v 5 ) g(v 3) v 3 v 4 f(v 2 ) f(v 5 ) Isomorfní grafy.

Fakt Isomorfní grafy G a H mají stejný počet vrcholů stejný počet hran stejný nejvyšší stupeň (G) = (H) stejný nejnižší stupeň δ(g) = δ(h) stejnou stupňovou posloupnost každý podgraf grafu G musí být isomorfní s podgrafem grafu H a naopak... Pokud je bijekce f isomorfismem, musí zobrazit na sebe vrcholy stejných stupňů, tj. deg G (v) = deg H (f (v)). Pozor! Opačná implikace neplatí! Nestačí porovnat stupňové posloupnosti!

Příklad Jsou následující dva grafy se stupňovou posloupností (4, 3, 3, 2, 2, 2) isomorfní? Jsou tyto dva grafy isomorfní? Jsou tyto dva grafy isomorfní?

pokračování... w x f(y) f(x) v y f(u) f(z) u z f(w) f(v) Isomorfismus f mezi danými dvěma grafy. Poznámka Na příkladech jsme si ukázali některé postupy, jak poznat zda grafy jsou nebo nejsou isomorfní. Žádný rozumný univerzální postup pro nalezení isomorfismu není znám! Jediný (známý) univerzální postup pro nalezení či vyvrácení isomorfismu mezi dvěma grafy je typu vyzkoušejte všechny bijekce mezi vrcholy těchto grafů (takových bijekcí může být až n!).

Věta Relace být isomorfní je relací ekvivalence na třídě všech grafů. Důkaz Relace je reflexivní, protože graf je isomorfní sám sobě identickým zobrazením, symetrická, nebot k isomorfismu (bijekci) f existuje (jednoznačně) inverzní zobrazení f 1, tranzitivní, nebot skládáním isomorfismů (zobrazení) dostaneme opět isomorfismus (zobrazení). Pokud mluvíme o nějakém grafu, mysĺıme tím obvykle jeho celou třídu isomorfismu, nezáleží na konkrétní reprezentaci, nakreslení či pojmenování grafu. [ K 9 ] [ C 4 ] [ K 2,2 ] [ K 4,5 ] Třídy grafů....

O implementaci grafů Vrcholy grafu G označíme nezápornými celými čísly 0, 1,..., n 1. Nejběžnější implementace grafů v počítači jsou: Matice sousednosti Matice sousednosti grafu G je čtvercová matice A = (a ij ) řádu n, ve které je prvek { 1 je-li v i v j E(G) a ij = 0 jinak. Lze ji uložit do dvourozměrného pole a[][] kde a[i][j]=1 pokud graf obsahuje hranu ij, jinak a[i][j]=0. Součet čísel v i-tém řádku/sloupci matice je roven stupni vrcholu i. Výhody: snadno ověříme, zda se hrana ij v grafu nachází nebo ne, snadno také nějakou hranu ij do grafu přidáme/odebereme. Nevýhody: matice sousednosti je rozsáhlá, zabírá mnoho paměti i pro řídké grafy.

Příklad Sestavte matici sousednosti grafu na obrázku. 3 1 2 5 4 0 Matice sousednosti je A = v\v 0 1 2 3 4 5 0 0 1 1 0 0 0 1 1 0 1 1 0 0 2 1 1 0 1 0 0 3 0 1 1 0 0 0 4 0 0 0 0 0 1 5 0 0 0 0 1 0

Incidenční matice Incidenční matice B grafu G je obdélníková matice s n řádky a m = E(G) sloupci. Každému vrcholu grafu G odpovídá jeden řádek matice B a každé hraně grafu G jeden sloupec matice B. Prvek b ij matice B nabývá hodnoty 1, když vrchol i je incidentní s hranou e j, v opačném případě je b ij = 0. Součet čísel v každém sloupci je 2 a součet čísel v i-tém řádku je roven stupni vrcholu i. Výhody: snadno najdeme koncové vrcholy nějaké hrany, snadno také nějakou hranu ij v grafu přepojíme. Nevýhody: přidání/odebrání hrany z incidenční matice grafu je komplikované, pro velké grafy by incidenční matice velmi rozsáhlá a poměrně řídká.

Příklad Sestavte incidenční matici grafu na obrázku. 3 1 2 5 4 0 Incidenční matice grafu G je B = v\e 01 02 12 13 23 45 0 1 1 0 0 0 0 1 1 0 1 1 0 0 2 0 1 1 0 1 0 3 0 0 0 1 1 0 4 0 0 0 0 0 1 5 0 0 0 0 0 1

Seznamů sousedních vrcholů Pro každý vrchol i = 0, 1,..., n 1 grafu G vytvoříme seznam (pole) vrcholů, například sous[i][], které jsou s vrcholem i sousední. Každé pole bude mít deg(i) položek, kde deg(i) je stupeň vrcholu i, který je uložen v poli deg[]. Prvky sous[i][0], sous[i][1],..., sous[i][deg[i]-1] obsahují vrcholy (nebo jejich indexy) sousední s vrcholem i. Příklad deg[] = [2, 3, 3, 2, 1, 1], sous[0][] = [1, 2], sous[1][] = [0, 2, 3], sous[2][] = [0, 1, 3], sous[3][] = [1, 2], sous[4][] = [5], sous[5][] = [4].

Je třeba dbát na symetrii hran ij a ji! Výhody: vhodné pro grafy s malým počtem hran, snadno určíme deg(v), Nevýhody: náročná úprava takové struktury v průběhu algoritmu, časová náročnost vyhledání konkrétní hrany. Uvedené reprezentace vhodné i pro orientované grafy. Pro multigrafy se hodí zadání incidenční maticí, případně výčtem sousedů. Složitější datové struktury pro ohodnocené grafy (přiřadíme ohodnocení hran/vrcholů). Můžeme použít další pole, strukturované datové typy...

Příště Kapitola 2. Souvislost grafu motivace spojení mezi vrcholy, komponenty grafu prohledávání grafu vyšší stupně souvislosti Eulerovské grafy jedním tahem