Advanced Algorithms and Data Structures
Faculteit  Science and Engineering 
Jaar  2017/18 
Vakcode  INBGAD10 
Vaknaam  Advanced Algorithms and Data Structures 
Niveau(s)  bachelor 
Voertaal  Engels 
Periode  semester II a 
ECTS  5 
Rooster  rooster.rug.nl 
Uitgebreide vaknaam  Advanced Algorithms and Data Structures  
Leerdoelen  The learning objectives of this course are the following. 1. Knowledge of several fundamental algorithms and data structures that play a central role in Computing Science. 2. Skill in describing algorithms in pseudocode and in an object oriented programming language. 3. Skill in reasoning about algorithms and data structures concerning correctness and efficiency. 4. Skill in analysing algorithms and data structures by means of experiments. 5. Skill in reporting about activities that involve the knowledge and skills listed above. 

Omschrijving  You learn a core subject in computer science: the design and analysis of algorithms and data structures. We will look at complexity issues, such as the resource consumption of an algorithm, in terms of computing time and memory use. Our approach will be scientific, focusing on asymptotic behaviour: what is the increase in resource consumption when the size of the input increases? We will cover the following topics: sorting algorithms, medians and order statistics, elementary data structures, hash tables, search trees, dynamic programming, greedy algorithms, graph algorithms, minimum spanning trees, shortest paths, maximum flow networks, and some further topics such as string matching and NPcompleteness. These algorithms form the foundation of many computing systems, from web search to network protocols. The assignments will be practical (in Java or Python) and will be evaluated by testing against test inputs of various sizes. 

Uren per week  
Onderwijsvorm  Hoorcollege (LC), Practisch werk (PRC)  
Toetsvorm 
Opdracht (AST), Practisch werk (PR), Schriftelijk tentamen (WE)
(Assignments and an exam. The assignments (the A grade) are worth together 60% of the grade; the exam (the E grade) is worth 40% of the grade. Both A and E grades must be above 5.0.) 

Vaksoort  bachelor  
Coördinator  K. Bunte, PhD.  
Docent(en)  K. Bunte, PhD.  
Verplichte literatuur 


Entreevoorwaarden  Recommended: the courses 'Algorithms and Data Structures in C' and 'Discrete Structures'.  
Opmerkingen  
Opgenomen in 
