Syllabus academic year 2007/2008
ALGORITHMS AND DATA STRUCTURES | EDA027 |
Higher education credits: 7,5.
Grading scale: TH.
Level: G1
(First level).
Language of instruction: The course will be given in Swedish.
EDA027 overlap following cours/es: EDA020, EDA025, EDA026, EDA035, EDA510, EDA690, EDAA01, EDA020, EDA025, EDA026, EDA035, EDA510, EDA690, EDAA01 och EDAF05.
Compulsory for: L3XTG, Pi2.
Optional for: E2, F2, F2sfm, L4gi, N3.
Course coordinator: Eva Magnusson, Eva.Magnusson@cs.lth.se och Anna Axelsson, Anna.Axelsson@cs.lth.se, Inst f datavetenskap.
Prerequisites: A first course in Object Oriented Programming with Java corresponding to EDA011/EDA016/EDA017/EDA501.
Selection criteria: hkjshfdsfghjs.
Assessment: The final grade of the course is based on the result of the written exam. Compulsory course items: exercises, laboratory work and assignments.
Parts: 2.
Home page: http://www.cs.lth.se/EDA027.
Aim
The aim of the course is to give students the ability to construct program components which are easy to change, reusable and resource-aware. This requires good knowledge of data abstractions, data structures, algorithms and techniques for analysing the efficiency of algorithms.
Knowledge and understanding
For a passing grade the student must
- be able to describe common abstract data types, their applications and use and appropriate data structures for their implementation
- be able to describe fundamental algorithms for searching and sorting
- be familiar with simple techniques for constructing algorithms
- have knowledge of simple techniques for analysing the efficiency of algorithms
- be able to define, explain and apply advanced object oriented concepts
Skills and abilities
For a passing grade the student must
- for a selection of problems be able choose appropriate algorithms
- be able to implement fundamental algorithms and data structures in an object oriented language and to use standard libraries
- be able to apply simple techniques for analysing the time complexity of algorithms
- be able to use a simple tool for unit testing
Judgement and approach
For a passing grade the student must
- be able to evaluate proposed solutions and data representations for given problems with respect to usability and efficiency
Contents
Time complexity of algorithms. Recursion, recursive structures. Algorithm construction using divide and conquer. Fundamental data structures: lists, queues, stacks, sets, trees, priority queues and graphs. Efficient algorithms for searching and sorting. The Java API for data structures.
Literature
Weiss, M A: Data Structures & Problem Solving using Java, Third Edition. Addison Wesley 2006. ISBN: 0-321-31255-4
Parts
Code: 0104.
Name: Exercises, Laboratory Work and Assignments.
Higher education credits: 3.
Grading scale: UG.
Assessment: All compulsory course items must be completed for a passing grade.
Contents: Exercises, laboratory work and assignments.
Code: 0204.
Name: Written Examination.
Higher education credits: 4,5.
Grading scale: TH.
Assessment: The final grade of the course is based on the grade of the written exam.
Contents: Written exam.