teaching:ads22223_lecture
Rozdíly
Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.
Obě strany předchozí revizePředchozí verzeNásledující verze | Předchozí verze | ||
teaching:ads22223_lecture [2022/12/15 09:21] – Martin Koutecky | teaching:ads22223_lecture [2023/01/09 13:41] (aktuální) – Martin Koutecky | ||
---|---|---|---|
Řádek 19: | Řádek 19: | ||
| 7. 12. | Finish FFT, begin reductions. [[https:// | | 7. 12. | Finish FFT, begin reductions. [[https:// | ||
| 14. 12. | Reductions: SAT, 3-SAT, IndSet, Clique, 3DM. [[https:// | | 14. 12. | Reductions: SAT, 3-SAT, IndSet, Clique, 3DM. [[https:// | ||
+ | | 21. 12. | 3,3-SAT reduces to 3DM. Classes P, NP; Cook's theorem. [[https:// | ||
+ | | 4. 1. | Dealing with NP-hardness. IndSet is solvable on trees; coloring is solvable on interval graphs; Knapsack is solvable in pseudopolynomial time (=when input values are polynomially bounded). Approximation: | ||
{{page> | {{page> | ||
+ | * {{ : | ||
- | /* | ||
- | ====== | + | ====== |
The exam will consist of: | The exam will consist of: | ||
- | - Two questions about an algorithm or a data structure from the lecture – describing the algorithm or data structure, proving they are correct, giving the complexity analysis. | + | - Two questions about an algorithm or a data structure from the lecture – describing the algorithm or data structure, proving they are correct, giving the complexity analysis. |
- Two tasks similar to those from the tutorial – either apply an algorithm / data structure from the lecture to some problem (need to model the problem appropriately) OR adapt the algorithm / data structure to solve some problem (need to understand how it works internally to be able to adapt it appropriately) | - Two tasks similar to those from the tutorial – either apply an algorithm / data structure from the lecture to some problem (need to model the problem appropriately) OR adapt the algorithm / data structure to solve some problem (need to understand how it works internally to be able to adapt it appropriately) | ||
Řádek 47: | Řádek 48: | ||
**Disclaimer: | **Disclaimer: | ||
- | * BFS, DFS and their edge classifications | + | * String searching -- problem definition, basic notions |
- | * DFS applications: | + | * Knuth-Morris-Pratt Algorithm |
- | * Dijkstra’s algorithm | + | * Aho-Corasick Algorithm |
- | * Bellman-Ford’s algorithm | + | * Rabin-Karp Algorithm |
- | * Floyd-Warshall’s algorithm (small topic) | + | * Network Flows -- problem definition, notions, lemmas |
- | * Jarník’s algorithm | + | * Ford-Fulkerson |
- | * Borůvka’s algorithm | + | * Dinitz |
- | * Kruskal’s algoritmus + Union-Find data structure using trees | + | * Goldberg |
- | * Binary Search Trees (BSTs) in general | + | * Parallel Algorithms / Circuits |
- | * AVL trees | + | * Fast Addition |
- | * $(a, | + | * Fast Sorting |
- | * Red-black trees – we covered these very briefly, but you should be able to describe the bijection between LLRBs and $(2, | + | * Geometric Algorithms |
- | * Hashing with chaining | + | * Convex Hull |
- | * Hashing with open addressing (warning, I did this at the tutorial; if you don’t understand it, please read JeffE’s notes) | + | * Line Segment Intersections |
- | * Universal hashing | + | * FFT: definitions, algorithm, how to multiply polynomials quickly |
- | * Master theorem – analyzing the complexity | + | * Reductions |
- | * Integer multiplication using Karatsuba’s algorithm | + | * Definitions |
- | * MomSelect (finding the $k$-th smallest element in an array in linear time) | + | * P, NP, NP-complete, |
- | * Edit Distance dynamic programming algorithm | + | |
- | * Longest Increasing Subsequence dynamic programming algorithm | + | * Dealing with NP-hardness |
- | * Lower bounds: searching in a sorted array is $\Omega(\log n)$, sorting is $\Omega(n \log n)$ (only applies to deterministic and comparison-based algorithms) | + | * IndSet on Trees |
+ | * Coloring of Interval Graphs | ||
+ | * Approximation algorithms | ||
+ | * $2$-approximation of $\Delta$-TSP | ||
+ | * Non-existence of an $O(1)$-approximation for (unrestricted) TSP | ||
+ | * Pseudopolynomial algorithm for Knapsack; FPTAS for Knapsack. | ||
- | */ | ||
teaching/ads22223_lecture.1671092497.txt.gz · Poslední úprava: 2022/12/15 09:21 autor: Martin Koutecky