This course is meant primarily for School of Science students with some Computer Science background.
We are interested in following groups:
math proficient students (especially with background in math olympics/math competitions) willing to learn programming and algorithmic techniques
computer science students willing to learn problem solving techniques
all students willing to participate in algorithmic competitions
basic programming in ANY of C, C++, Java, Pascal, Python
basic algorithms / data structures knowledge
algorithm analysis (big-O notation)
Learning objectives / aim of the course:
Proficiency in solving algorithmic problems.
Programming competition related skills:
understanding the problem statement (problem decomposition),
Preparing for programming competitions:
NCPC (Nordic Collegiate Programming Contest),
NWERC (North West European Regional Contest),
hopefully ICPC World Finals.
Enroll to the course by sending an email with topic "T-106.6200 registration" to lecturers Przemysław Uznański (przemyslaw.uznanski at aalto.fi) & Ari Korhonen (ari.korhonen at aalto.fi). Register before Tuesday Feb 24th.
You must provide your
major topic (or study program) and study background (the relevant courses you have done)
experience on the following topics (on a level 'never heard'/‘I have heard about it’/’I have passed a course’):
balanced search trees,
representations (Adjacency List/Matrix),
searching in graphs (DFS, BFS),
advanced topics (MST, SSSP, MFP)
in the registration email.
The course consists of lectures and assignments. To pass the course you must pass the assignments. The grading scale will be pass/fail.
6.3.2015 A106 15-16 T7 16-18
13.3.2015 T7 15-18
20.3.2015 T7 15-18
27.3.2015 A106 15-16 27.3.2015 T7 16-18
24.4.2015 T7 15-18 (no meeting, but online contest) cancelled
8.5.2015 T7 15-18
15.5.2015 T7 15-18
22.5.2015 T7 15-18
10.4.2015 (Exam week?)
Examples of problems:
ideas for the rest of the course:
dynamic programming (memoization, recursion)
efficient graph handling
This is a special course and there is a lot of material available, but no textbook that is used as the basis of the course.
Supplementary material is referred to on the course slides.
Similar courses on the web: