BBM202 - Algorithms
Spring 2017

A TSP Art by Bob Bosch and Tom Wexler.
Course Information
Course Description
The subject matter of this course concerns fundamental algorithms in computer science. The course is structured around key topics including analysis of algorithms, sorting, searching, graph algorithms, string processing, dynamic programming, combinatorial search and NP-completeness.
The goal of this course is to teach student how to develop algorithms in order to solve the complex problems in the most efficient way. The students are expected to develop a foundational understanding and knowledge of key concepts that underly important algorithms in use on computers today. The students will also be expected to gain hand-on experience via a set of programming assignments supplied in the complementary BBM 204 Software Practicum.
Time and Location
BBM202
Section 1: Monday at 09:00-10:50 in Room D2, Thursday at 11:00-11:50 in Room D2
Section 2: Monday at 09:00-10:50 in Room D3, Thursday at 11:00-11:50 in Room D3
Section 3: Monday at 09:00-10:50 in Room D4, Thursday at 11:00-11:50 in Room D4
BBM204
Section 1: Friday at 14:00-16:50 in Room D3
Section 2: Friday at 14:00-16:50 in Room D4
Section 3: Friday at 14:00-16:50 in Room D9
Instructors

Aykut Erdem (Section 1)
aykut@cs.hacettepe.edu.trOffice Hours:
Tue 4-5pm
Room 111
http://web.cs.hacettepe.edu.tr/~aykut

Erkut Erdem (Section 2)
erkut@cs.hacettepe.edu.trOffice Hours:
Tue 4-5pm
Room 114
http://web.cs.hacettepe.edu.tr/~erkut

Adnan Özsoy (Section 3)
adnan.ozsoy@hacettepe.edu.trOffice Hours:
Tue 13:00-14:00
Room Z08
http://web.cs.hacettepe.edu.tr/~aozsoy/
Teaching Assistants

Bahar Gezici
bahargezici@cs.hacettepe.edu.trOffice Hours:
Tuesday 13.00-15.00
Room 121

Isil Karabey
isilkarabey@cs.hacettepe.edu.trOffice Hours:
Wednesday 09.00-11.00
Room Z06

Levent Karacan
karacan@cs.hacettepe.edu.trOffice Hours:
Tuesday 09.00-12.00
Room Z03 (Computer Vision Lab.)

Yasin Sahin
yasin@cs.hacettepe.edu.trOffice Hours:
Monday 13.30-16.00
Room 226
Communication
The course webpage will be updated regularly throughout the semester with lecture notes, programming and reading assignments and important deadlines. All other course related communications will be carried out through Piazza. Please enroll it by following the link https://piazza.com/hacettepe.edu.tr/spring2017/bbm202.
Course Requirements and Grading
Grading for BBM202 will be based on
- 3 midterm exams (55% = 10+30+15%),
- a final exam (40%), and
- attendance (5%)
- a set of quizzes (20%), and
- 4 programming assignments (done individually) (80%).
Policies
Attendance to lectures is required. You are responsible for all material presented in lecture. Some of the course material might not be covered in the textbook.
All work on assignments must be done individually unless stated otherwise. You are encouraged to discuss with your classmates about the given assignments, but these discussions should be carried out in an abstract way. That is, discussions related to a particular solution to a specific problem (either in actual code or in the pseudocode) will not be tolerated.
In short, turning in someone else’s work, in whole or in part, as your own will be considered as a violation of academic integrity. Please note that the former condition also holds for the material found on the web as everything on the web has been written by someone else.
Text Book
Algorithms, 4th Edition, R. Sedgewick and K. Wayne, Addison-Wesley Professional, 2011
Schedule (Tentative)
Week | Date | Topic | Notes |
---|---|---|---|
1 | Feb 13 | Course Introduction [slides] [4-per-page] | Reading: |
Feb 16 | Analysis of Algorithms [slides] [4-per-page] | Reading: SW 1.4 | |
2 | Feb 20 | Elementary Sorting Algorithms [slides] [4-per-page] | Reading: SW 2.1 [ rec1 ] |
Feb 23 | Mergesort [slides] [4-per-page] | Reading: SW 2.2 | |
3 | Feb 27 | Quicksort [slides] [4-per-page] | Reading: SW 2.3 [ PA1 ] out [ rec2 ] |
Mar 2 | Heapsort [slides] [4-per-page] | Reading: SW 2.4 | |
4 | Mar 6 | Elementary Search Algorithms [slides] [4-per-page] | Reading: SW 3.1 |
Mar 9 | Binary Search Trees [slides] [4-per-page] | Reading: SW 3.2 [ rec3 ] |
|
5 | Mar 13 | Balanced Trees [slides] [4-per-page] | |
Mar 16 | 1st Midterm Exam | Reading: SW 3.3 | |
6 | Mar 20 | Balanced Trees (cont'd) | PA1 due [ rec4 ] |
Mar 23 | Hashing, Search Applications [slides] [4-per-page] | Reading: SW 3.4, 3.5 [ PA2 ]out [ rec5 ] |
|
7 | Mar 27 | Undirected Graphs [slides] [4-per-page] | Reading: SW 4.1 |
Mar 30 | Undirected Graphs (cont'd) | ||
8 | Apr 3 | Directed Graphs [slides] [4-per-page] | Reading: SW 4.2 |
Apr 6 | Directed Graphs (cont'd) | PA2 due [ rec7 ] |
|
9 | Apr 10 | 2nd Midterm Exam | Reading: SW 4.3 |
Apr 13 | Minimum Spanning Trees [slides] [4-per-page] | PA3 out | |
10 | Apr 17 | Minimum Spanning Trees (cont'd) | |
Apr 20 | Shortest Path [slides] [4-per-page] | Reading: SW 4.4 | |
11 | Apr 24 | Shortest Path | |
Apr 27 | String Sorting [slides] [4-per-page] | Reading: SW 5.1 PA3 due |
|
12 | May 1 | No class - International Workers' Day | |
May 4 | Tries [slides] [4-per-page] | Reading: SW 5.1 PA4 out |
|
13 | May 8 | Substring Search [slides] [4-per-page] | |
May 11 | 3rd Midterm Exam | Reading: SW 5.3 | |
14 | May 15 | Data Compression[slides] [4-per-page] | Reading SW 5.5 |
May 18 | Data Compression (cont.) | Reading SW 5.5 |
Programming Assignments
- Assignment 1 (Due: 24-03-2017 (23:59:59))
- Assignment 2 (Due: 07-04-2017 (23:59:59))
- Assignment 3 (Due: ??? ??, 2017 (23:59:59))
- Assignment 4 (Due: ??? ??, 2017 (23:59:59))
Previous editions