20.12 - "Cykl Eulera"
1. Definicja cyklu i sciezki Eulera. Warunek konieczny i wystarczajacy
na istnienie cyklu i sciezki Eulera w grafie nieskierowanym i skierowanym
wraz z dowodem (konstruktywnym).
2. Bardzo prosty rekurencyjny algorytm na wyznaczanie cyklu Eulera
w zlozonosci O(V+E) (patrz tutaj).
3. Generowanie kodu Graya - mialo byc z cyklu Eulera, ale nie wyszlo,
wiec zrobilismy algorytm generujacy kod Graya rzedu n z kodu rzedu n-1.
4. Znajdowanie minimalnego pokrycia sciezkowego grafu nieskierowanego
(najmniejszej liczby sciezek, ktore pokrywaja wszystkie krawedzie grafu)
z wykorzystaniem cyklu Eulera (dokladamy krawedzie laczace wierzcholki
    o nieparzystych stopniach, znajdujemy cykl i go rozcinamy).
5. Alternatywne rozwiazania zad. 3 z kolka 2 tygodnie temu z wykorzystaniem
cyklu Eulera (przypadki: cykl, graf eulerowski, graf nieeulerowski).
6. Krotko o cyklach Hamiltona i problemie komiwojazera:
nie znamy wielomianowego algorytmu,
jest algorytm O(2^n * n^2) (patrz zad. Atrakcje turystyczne z 1 etapu XIV OI),
sa znane pewne twierdzenia dostateczne (tw. Orego - patrz Wilson).

Wiekszosc materialu teoretycznego mozna znalezc w ksiazce Wilsona
"Wprowadzenie do teorii grafow".