- Docente: Luciano Margara
- Credits: 12
- SSD: INF/01
- Language: Italian
- Moduli: Luciano Margara (Modulo 1) Pietro Di Lena (Modulo 2)
- Teaching Mode: Traditional lectures (Modulo 1) Traditional lectures (Modulo 2)
- Campus: Cesena
- Corso: First cycle degree programme (L) in Computer Science and Engineering (cod. 8615)
Learning outcomes
At the end of the course the student: - knows the basic algorithms and data structures; - knows how to compute computational costs; - Knows the classes P and NP; he can dvise fficient algorithms for solving simple computational problems; he can estimate the order of magnitude of the cost of a given algorithm; he can analyze the complexity of a problem; he knows techniques for analyze the correctness and the efficiency of an algorithm; he is able to write and to present a project for solving a computational problem.
Course contents
basic notion of discrete mathematics for analyzing order of magnitude - Sorting - Median and selection - Elementary data structures: stacks, queues, graphs - Search algorithms on graphs - basic algorithms on graphs - Classes P and NP - NP hard Problems
Readings/Bibliography
T. Cormen, C. Leiserson, R. Rivest. Introduction to algorithms. MIT Press.
Teaching methods
Lectures in class
Assessment methods
Written and oral exam. Project.
Teaching tools
Slides and books
Links to further information
http://www.cs.unibo.it/~margara/Didattica/Algoritmi/asd.html
Office hours
See the website of Luciano Margara
See the website of Pietro Di Lena