Course Information

About

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 students 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 underlies 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: Tuesday at 13:00-15:50 in Room D3
Section 2: Tuesday at 13:00-15:50 in Room D4
Section 3: Tuesday at 13:00-15:50 in Room D8

BBM204

Section 1: Thursday at 09:00-10:50 in Comp. Lab
Section 2: Thursday at 11:00-12:50 in Comp. Lab
Section 3: Thursday at 13:00-14:50 in Comp. Lab

Instructors

         

Erkut Erdem (Section 1) · erkut@cs.hacettepe.edu.tr
Gonenc Ercan (Section 2) · gonenc@cs.hacettepe.edu.tr
Engin Demir (Section 3) · engindemir@cs.hacettepe.edu.tr

Teaching Assistants

    

Merve Ozdes · merve@cs.hacettepe.edu.tr | Office Hours: Tuesday 10:00 - 12:00

Selman Bozkır · selman@cs.hacettepe.edu.tr | Office Hours: Monday 13:30 - 17:00

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/spring2020/bbm202
https://piazza.com/hacettepe.edu.tr/spring2020/bbm204

Course Requirements and Grading

Grading for BBM202 will be based on

In BBM204, the grading will be based on

Policies

Attendance to lectures is mandatory. A student who do not attend the lectures more than 4 weeks will fail BBM202 directly with an F1 grade. A student who do not attend more than 1 recitation session or quiz exams, do not submit more than 2 assignments will fail BBM204 directly with an F1 grade. You are responsible for all material presented in lectures. 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 25 Course Introduction [slides],
Analysis of Algorithms [slides]
Reading: SW 1.4
2 Mar 3 Elementary Sorting Algorithms [slides],
Mergesort [slides]
Reading: SW 2.1, 2.2
Quiz 1 - take-home
3 Mar 10 Quicksort [slides],
Heapsort [slides]
Reading: SW 2.3, 2.4
PA1 out
4 Mar 31 Elementary Search Algorithms [slides],
Binary Search Trees [slides]
Reading: SW 3.1, 3.2
5 Apr 7 Balanced Trees [slides] Reading: SW 3.3
Quiz 2 - take-home
6 Apr 14 Hashing, Search Applications [slides] 1st Midterm Exam
Reading: SW 3.4, 3.5
PA2 out
7 Apr 21 Undirected Graphs [slides] , Directed Graphs [slides] Reading: SW 4.1, 4.2
Quiz 3 - take-home
8 Apr 28 Minimum Spanning Trees [slides] Reading: SW 4.3
9 May 5 Shortest Path [slides] Reading: SW 4.4
PA3 out
10 May 12 String Sorting [slides] Reading: SW 5.1
2nd Midterm Exam
Quiz 4 - take-home
11 May 19 No class - national holiday
12 May 26 No class - national holiday PA4 out
13 Jun 2 Substring Search [slides]
Regular Expressions [slides]
Reading: SW 5.3
Quiz 5 - take-home
14 Jun 9 Data Compression [slides] Reading: SW 5.5

Previous editions