| Title: | Graph Algorithms |
|---|
| Code: | GAL |
|---|
| Ac.Year: | 2009/2010 |
|---|
| Term: | Winter |
|---|
| Study plans: | |
|---|
| Language: | Czech |
|---|
| Public info: | http://www.fit.vutbr.cz/study/courses/GAL/public/ |
|---|
| Credits: | 5 |
|---|
| Completion: | examination (written&verbal) |
|---|
Type of instruction: | | Hour/sem | Lectures | Sem. Exercises | Lab. exercises | Comp. exercises | Other |
|---|
| Hours: | 39 | 0 | 0 | 0 | 13 |
|---|
| | Examination | Tests | Exercises | Laboratories | Other |
|---|
| Points: | 60 | 0 | 0 | 0 | 40 |
|---|
|
|---|
| Guarantee: | Meduna Alexander, prof. RNDr., CSc., DIFS |
|---|
| Lecturer: | Křivka Zbyněk, Ing., Ph.D., DIFS Masopust Tomáš, RNDr., Ph.D., DIFS |
| Instructor: | Křivka Zbyněk, Ing., Ph.D., DIFS Masopust Tomáš, RNDr., Ph.D., DIFS |
|---|
| Faculty: | Faculty of Information Technology BUT |
|---|
| Department: | Department of Information Systems FIT BUT |
|---|
| Prerequisites: | |
|---|
| | | Learning objectives: |
|---|
Familiarity with graphs and graph algorithms with their complexities. | | Description: |
|---|
This course discusses graph representations and graphs algorithms for searching (depth-first search, breadth-first search), topological sorting, graph components and strongly connected components, minimal spanning trees, single-source and all-pairs shortest paths, maximal flows and minimal cuts, maximal bipartite matching, Euler graphs, and graph coloring. The basic principles and complexities of all presented algorithms are discussed. | | Knowledge and skills required for the course: |
|---|
Algorithmic thinking. | | Learning outcomes and competences: |
|---|
Fundamental ability to construct an algorithm for a graph problem and to analyze its time and space complexity. | | Syllabus of lectures: |
|---|
- Introduction, algorithmic complexity, basic notions and graph reprezentations.
- Graph searching, depth-first search, breadth-first search.
- Topological sort, acyklic graphs.
- Graph components, strongly connected components, examples.
- Trees, minimal spanning trees, algorithms of Jarník and Borůvka.
- Growing a minimal spanning tree, algorithms of Kruskal and Prim.
- Single-source shortest paths, the Bellman-Ford algorithm, shortest path in DAGs.
- Dijkstra's algorithm. All-pairs shortest paths.
- Shortest paths and matrix multiplication, the Floyd-Warshall algorithm.
- Flows and cuts in networks, maximal flow, minimal cut, the Ford-Fulkerson algorithm.
- Matching in bipartite graphs, maximal matching.
- Euler graphs and tours and Hamilton cycles.
- Graph coloring.
| | Syllabus - others, projects and individual work of students: |
|---|
- Presentation of solutions of given assignments.
| | Fundamental literature: |
|---|
- T.H. Cormen, C.E. Leiserson, R.L. Rivest, Introduction to Algorithms, McGraw-Hill, 2002.
- J. Demel, Grafy, SNTL Praha, 1988.
- J. Demel, Grafy a jejich aplikace, Academia, 2002. (More about the book.)
- R. Diestel, Graph Theory, Third Edition, Springer-Verlag, Heidelberg, 2000.
- J.A. McHugh, Algorithmic Graph Theory, Prentice-Hall, 1990.
- J.A. Bondy, U.S.R. Murty: Graph Theory, Graduate text in mathematics, Springer, 2008.
- J.L. Gross, J. Yellen: Graph Theory and Its Applications, Second Edition, Chapman & Hall/CRC, 2005.
- J.L. Gross, J. Yellen: Handbook of Graph Theory (Discrete Mathematics and Its Applications), CRC Press, 2003.
| | Study literature: |
|---|
- Copy of lectures.
- T.H. Cormen, C.E. Leiserson, R.L. Rivest, Introduction to Algorithms, McGraw-Hill, 2002.
| | Controlled instruction: |
|---|
- Final exam. The minimal number of points which can be obtained from the final exam is 25. Otherwise, no points will be assigned to a student.
| | Progress assessment: |
|---|
- Presentation of solutions of the given tasks (evaluated, max. 40 points, a part of the exam).
- Final test (max. 60 points).
| | |
|