Algorytmy Sekwencyjne II (jesień 2007)
Tematy na egzamin
Wersja ostateczna
- Algorytmy randomizowane - Definicja, Motywacja, Definicje
algorytmów Monte Carlo i Las Vegas (i różnice)
Liczenie całek i pól powierzchni figur metodą Monte Carlo,
przykłady: stwierdzanie, czy tablica ma same 'a', czy po połowie
'a' i 'b', test pierwszości Millera-Rabina (bez szczegółów
teorioliczbowych). Skip Listy - co to jest, do czego służy,
algorytmy wstawiania, usuwania i znajdowania elementów,
złożoność, policzenie średniej wysokości elementu, średnia
wysokość skip-listy (bez dowodu), policzenie średniego
rozmiaru skip-listy, złożoności operacji (dowód z "machaniem rękami").
- Algorytmy randomizowane 2 - randomizowany QuickSort
(losowy punkt podziału) - w jakich przypadkach jest lepszy,
maksymalny przekrój (z dowodem, że jest to 1/2-aproksymacja),
problem długiej ścieżki (algorytm i idea dowodu - można pominąć pewne
obliczenia w dowodzie), definicja algorytmu randomizowanego.
Uwaga: nie trzeba znać zastosowań praktycznych
problemu maksymalnego przekroju.
- Algorytmy aproksymacyjne - definicja aproksymacji,
2-aproksymacji, itp., po co aproksymować, pokrycie wierzchołkowe
(trzeba wiedzieć, że algorytm zachłanny, w którym bierzemy
wierzchołek najwyższego stopnia nie będzie gwarantował 2-aproksymacji,
patrz
ważniak, przykład 3.2),
problem komiwojażera z nierównością trójkąta (tylko 2-aproksymacja,
ale z dowodem; można nie znać sposobu na 3/2 aproksymacje),
dowód, że ogólnego problemu komiwojażera nie da się aproksymować.
- Schemat aproksymacyjny - definicja aproksymacji, definicja
schematu aproksymacyjnego, błąd względny, schemat aproksymacyjny dla
problemu sumy podzbioru (z dowodem, że schemat jest wielomianowy i
że działa; można pominąć dowód lematu: "dla każdego y istnieje z
... ", ale trzeba umieć z niego skorzystać). Uwaga! tego nie bedzie do wylosowania
- Maksymalny przepływ - definicja sieci przepływowej, przepływu,
grafu residualnego, przepustowości, ścieżki powiększającej,
twierdzenie o maksymalnym przepływie i minimalnym przekroju,
Algorytm Forda-Fulkersona, jego złożoność; Trzeba wiedzieć, że
algorytm Forda-Fulkersona dla liczb rzeczywistych może się nie
zatrzymać, ale można nie pamiętać przykładu. Trzeba pamiętać, że
algorytm Edmondsa-Karpa (wybieranie najkrótszych ścieżek
powiększających) ma lepszą złożoność - i wiedzieć jaką
(dowodu tego nie było na wykładzie, więc nie jest wymagany).
- Maksymalne skojarzenie - definicja skojarzenia, ścieżka naprzemienna,
ścieżka powiększająca, twierdzenie Berge'a i Hopcrofta-Karpa (z
dowodem), algorytm na skojarzenia w grafach dwudzielnych - poprawność,
złożoność i związek z przepływami
- Maksymalne skojarzenie - definicja skojarzenia, ścieżka naprzemienna,
ścieżka powiększająca, Algorytm na Hopcrofta-Karpa (szukanie
maksymalnego zbioru najkrótszych ścieżek powiększających minimalnej
długości), jego złożoność (z dowodem). Trzeba wiedzieć, że w tym
algorytmie długość najkrótszej ścieżki powiększającej stale rośnie,
ale można nie znać dowodu. Trzeba mniej więcej wiedzieć jak szukać
zbioru ścieżek powiększających
- Algorytmy online - definicje,
przyklad: przydzielanie zadan (z dowodem)
przyklad: narty (z dowodem)
przyklad: wyszukiwanie liniowe (Uwaga: prosze zwrocic uwage
jak jest liczony koszt przestawien! - bez dowodu)
przyklad: stronnicowanie (bez dowodu)
Uwaga! Jeśli nie trzeba znać jakiegoś dowodu, do jego znajomość
będzie dodatkowym plusem!