Data Structures And Algorithms

Basic information

Workload: 

60 hours

Prerequisite: 

Programming languages.

Syllabus: 

Complexity of algorithms. Algorithm complexity measures. Algorithms for graphs and other common data structures. Types of algorithms: greedy algorithms, dynamic programming, division and achievement, etc.

 

Teaching Plan

Bibliography

Mandatory: 

•    Kleinberg, J., & Éva Tardos. (2005). Algorithm Design. Addison Wesley;
•    Dasgupta, S., Papadimitriou, C. H., & Vazirani, U. V. (2008). Algorithms. McGraw-Hill;
•    Structure and Interpretation of Computer Programs. (1996). Structure and Interpretation of Computer Programs. MIT Press.

Complementary: 

•    Hetland, M. L .. (2002). Practical Python. Books for professionals by professionals The expert's voice in open source Apresspod Series Expert's Voice (648 p). Apress;
•    Celes, W. Cerqueira, R. Rangel, J. L .. (2004). Introduction to data structures: using C programming techniques (293 p). Campus;
•    Wirth, Niklaus .. (1999). Algorithms and data structures. (255 p). LTC;
•    Edmonds, Jeff. (2010) How to think about algorithms. (300 p). LTC;
•    Horowitz, Ellis. (1987) Fundamentals of data structures. (494 p). Campus.