BILKENT UNIVERSITY
CS 202 Fundamental Structures of Computer Science II, Fall '14


Dr. Tuğrul Dayar

Section 1 (10:40-12:30 M, 8:40-10:30 Th at EB201)
Department of Computer Engineering (EA521) e-mail: tugrul@cs.bilkent.edu.tr
OH: 13:40-15:30 Th (or if this is not possible, by appointment from 1214)

Teaching Assistant
(Gündüz Vehbi Demirci, EA505, OH: 10:40-12:30 T, gunduz.demirci@bilkent.edu.tr
or if this is not possible, by appointment from x3472)


Dr. Çiğdem Gündüz Demir

Section 2 (8:40-10:30 W, 10:40-12:30 F at EB101)
Department of Computer Engineering (EA423) e-mail: gunduz@cs.bilkent.edu.tr
OH: 10:40-12:30 W (or if this is not possible, by appointment from 3443)

Teaching Assistant
(Cem Orhan, EA407, OH: 13:40-15:30 F, cem.orhan@bilkent.edu.tr
or if this is not possible, by appointment from x3475)


Dr. Uğur Doğrusöz

Section 3 (15:40-17:30 M, 13:40-15:30 Th at EB101)
Department of Computer Engineering (EA522) e-mail: http://www.cs.bilkent.edu.tr/~ugur/images/email-bilkent.gif
OH: 9:40-10:30 M, 10:40-11:30 Th (or if this is not possible, by appointment from 1612)

Teaching Assistant
(Gündüz Vehbi Demirci, EA505, OH:8:40-10:30 T, gunduz.demirci@bilkent.edu.tr
 or if this is not possible, by appointment from x3472)


Course Description:
The course picks up from where the first semester course left by discussing
concepts related to algorithmic efficiency on basic abstract data types and some sorting
algorithms that utilize recursion. Then the course introduces the abstract data types of trees,
tables, priority queues, and graphs, and shows how one can implement them in C++ using
fundamental data structures by emphasizing run-time complexity analysis.


Textbooks:
[1] Frank M. Carrano, Data Abstraction and Problem Solving with C++:
Walls and Mirrors, 5th edition, Addison-Wesley, 2006.
(You can also use the 4th edition.)
[2] Mark A. Weiss, Data Structures & Algorithm Analysis in C++, 3rd edition, Addison Wesley,
2006. (recommended)
[3] Harvey M. Deitel and Paul J. Deitel, C++ How to Program, 6th edition, Prentice Hall, 2008.
(recommended)


Course Outline:

·         Algorithm Efficiency and Sorting (Ch.9 of textbook [1], 3 weeks, slides1 slides2)

·          Trees (Ch.10 of textbook [1], 2 weeks, slides)

·          Tables and Priority Queues (Ch.11 of textbook [1], 2 weeks, slides)

·          Advanced Implementation of Tables (Ch.12 of textbook [1], 4 weeks, slides1 slides2 slides3)

·          Graphs (Ch.13 of textbook [1], 3 weeks, slides)


Resources:

·          Data Abstraction and Problem Solving with C++: Walls and Mirrors home page.

·          Source files of examples in [1]

·          Mark Allen Weiss home page

·          Deitel & Deitel home page

·          Related books in the library


Advice:
When you are in doubt, ask. Use office hours. If you cannot visit us during office hours, you can
always ask questions or arrange meetings by e-mail. Study regularly for the course and attend
classes. Do your assignments on time and pay attention to the instructions for submitting
assignments. Always make sure that the code you submitted does compile and run correctly.


Grading:

·         Quiz (15%)

·         Homework (10%)
Assignments will be posted 7-10 days before their due date.
Assignments are to be submitted to the assigned TA on the due date before 17:00;
they will not be accepted after their due date.
Turned in assignments must be printer outputs with your names, student-ids, and sections on them;
otherwise they will not be graded.
You should also send an e-mail message to the assigned TA containing your typed homework and
source codes of your C++ programs in your homework. You should send this e-mail message
before 18:00 on the due date.
Graded assignments are to be picked up from the TAs during their office hours.
You have to do your own homework. Cheating will be heavily punished.

O     Assignment 1 (due on wednesday, October 15)

O     Assignment 2 (due on friday, October 31)

O     Assignment 3 (due on monday, November 24)

O     Assignment 4 (due on thursday, December 11)

O     Assignment 5 (due on friday, December 26)

 

·         Midterm 1 (25%) November 10 (monday), 17:40-19:40, EE03-04-05-317
(a closed book/notes exam, covers chapters 9-10 from [1])

·         Midterm 2 (25%) December 15 (monday), 17:40-19:40, EE03-04-05-317
(a closed book/notes exam, covers chapters 11-12 from [1])

·         Final (25%) January 4 (Sunday), 12:30-15:00, EB101-104
(a comprehensive closed book/notes exam, covers chapters 9-13 from [1])
In order to be able to take the final exam,
one must obtain an average of at least 40% from the quiz and midterm grades;
else one will receive FZ.

Please see the Bilkent University policy for academic honesty.