Kruskalův algoritmus
2. Návrh možných adaptací
1. Organizace hran grafu v tabulce podle vrcholů, zápis kostry do dalšího dokumentu (listu):
Graf je nabízen ve formě tabulky. Do jejího prvního sloupce zapisujeme návěští vrcholů. Do dalších buněk na stejném řádku pro daný vrchol X vkládáme všechny hrany vycházející z X, a to ve formátu X–n–Y, kde n je ohodnocení hrany a Y je koncový vrchol hrany. V dalším listu tabulky, případně v samostatném souboru, uchováváme hrany, které zařazujeme do minimální kostry. Taktéž tam evidujeme množiny uzlů, které jsou přidanými hranami propojeny. Uvažujme tentýž graf H o sedmi uzlech, který jsme znázornili na Obrázku 1. Následující dvě tabulky (Tabulka 1 a Tabulka 2) zachycují stav po přidání prvních dvou hran do minimální kostry grafu H.
Příklad 3: Graf H z Obrázku 1 po přidání dvou hran
Příklad 4: Kostra grafu H z Obrázku 1 po přidání dvou hran
Z předchozích dvou tabulek je patrné, že obě dosud přidané hrany propojují množiny uzlů \{ C, F\} a \{ D, E\}. Před přidáním další hrany v pořadí (C–3–D) musíme ověřit, zda v kostře grafu H nevznikne kružnice. Vidomý student provádí kontrolu vizuálně, nevidomý si k tomuto účelu eviduje množiny uzlů propojených hranami dosavadní kostry. Pokud oba vrcholy zpracovávané hrany patří do stejné množiny uzlů, jejím přidáním bychom vytvořili kružnici. V opačném případě aktualizujeme Tabulku 3. Aktuální hranu vkládáme do kostry a následně upravíme množiny vzájemně propojených uzlů. Nesmíme zapomenout, že právě zpracovaná hrana byla v Tabulce 2 uvedena dvakrát, je tudíž nutné oba výskyty vymazat.
2. Organizace hran ve dvou sloupcích tabulky, zápis kostry do dalšího dokumentu (listu):
Graf je opět nabízen ve formě tabulky, hrany jsou však organizovány jiným způsobem. V 1. sloupci je jejich charakteristika, opět ve formátu x–n–y, kde x, y označují uzly propojené hranou s ohodnocením n. Ve 2. sloupci je znovu zopakováno ohodnocení hrany. Ukázku tohoto způsobu organizace hran nabízíme v Tabulce 3 .
Příklad 5: Hrany grafu H z Obrázku 1 včetně ohodnocení
A–5–C | 5 |
A–6–D | 6 |
A–7–B | 7 |
B–5–D | 5 |
B–6–E | 6 |
C–2–F | 2 |
C–3–D | 3 |
D–2–E | 2 |
D–3–G | 3 |
D–4–F | 4 |
E–4–G | 4 |
F–7–G | 7 |
Většina tabulkových procesorů nabízí možnost seřadit data podle hodnot určitého sloupce. Nevidomý student tedy může hrany seřadit vzestupně podle ohodnocení, když je uspořádá podle 2. sloupce. Pro zápis kostry grafu a množin dosud propojených uzlů používáme buď druhý list tabulky či samostatný dokument. Postupujeme stejným způsobem jako v předchozí metodě.