Algorithms and Data Structures (INF1, Fall 2007)


Course Lecturer

Hua Lu (email: luhua AT cs.aau.dk, office: Selma 3.2.05)

Course Description

This is an introductory course on algorithms and data structures for informatics students. It will cover these correlated aspects: algorithm correctness and complexity analysis, algorimth design techniques, fundamental data structures and important algorithms over them. Relevant basic concepts and approaches will be introduced, with limited intermediate or deep contents. Through this course, students are supposed to well understand the basic computer science algorithms and data structures, and be able to reason about algorithm correctness and complexity. The course will be given in English.

Textbook and References

Course Structure

This course will have 15 sessions. The first session will be an introductory one, approximately lasting for 2 hours. Each of other sessions will last for about 4 hours. The first 2 hours will be devoted to exercises, which cover the knowledge taught in the previous session. While the other 2 hours will be focused on giving a lecture with specific topics. The questions in the exercises are similar to those that will be used in the final exam, in terms of both format and difficulty.

Syllabus

You can have a look at it here.

Lecture Schedule (tentative! Check the calendar for updates.)

Exam

Individual and written. Marks will be given according to the standard Danish scale. Any electronic devices like laptops and mobile phones are NOT allowed. But you can freely use copies of slides from the lectures, textbooks, and any other course material common to all students.

Totally there will be 3 questions in the exam. Question 1 consists of 6-8 sub-questions, all of which are objective ones. For such objective sub-questions, you just need to pick a correct choice or write down the final answers only, without any written reasoning. Neither question 2 nor 3 is that simple. Instead, you need to think actively, and write down your justification together with the solutions (e.g., algorithm design followed by correctness/complexity analysis). The full 100 points are allocated in this way: 50 points for question 1, 25 points for question 2, and 25 points for question 3.

All exam (sub-)questions will exhibit the similar format and hardness as those used in exercises. Therefore, students should digest all exercise questions in order to get good scores in the exam.

Exam questions and answers in previous years:
Exam questions from 21.1.2004 are here and correct answers are here.
Exam questions from 30.8.2004 are here and correct answers are here.
Exam questions from 28.1.2005 are here and correct answers are here.
Exam questions from 31.8.2005 are here and correct answers are here.
Exam questions from 30.1.2006 are here and correct answers are here.
Exam questions from 30.1.2007 are here and correct answers are here.

Earlier exam questions: 2001 (re-exam), 2001, 2000 (re-exam), 2000.

Links


Acknowledgement: Part of the course materials are based on those from previous course lecturers Dr. Jiri Srba and Dr. Simonas Saltenis.