Data Structures and Algorithms

Basic information

Workload: 

45 hours

Syllabus: 

Most common data structures: graphs, queues, lists, arrays. Complexity of algorithms and complexity measures. Types of algorithms: greedy algorithms, dynamic programming, division and achievement. NP-Complete Problems. 

 

Teaching Plan

Bibliography

Mandatory: 

•    Dasgupta, S., Papadimitriou, C. H., & Vazirani, U. V. (2008). Algorithms. McGraw-Hill. 
•    Kleinberg, J., & Éva Tardos. (2005). Algorithm Design. Addison Wesley. 
•    Structure and Interpretation of Computer Programs. (1996). Structure and Interpretation of Computer Programs. MIT Press. 
•    Hetland, M. L. (2010). Python Algorithms: Mastering Basic Algorithms in the Python Language. Hurry.