Basic information
Workload:
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.
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.