CS 201: Fundamental Structures of Computer Science I
Spring '09

Announcements

May 18 The final exam will be held at B-204 (Ak - Garip) and B-206 (Gulay - Zorer) at 15:30-18:00 on May 21, 2009. It will be a closed-book and closed-notes exam but you are allowed to bring one hand-written A4 sheet. The exam will cover the whole semester.
May 11 Homework 3 has been posted.
Apr 28 The second midterm exam will be held at EB 203 (Ak - Garip) and EB 204 (Gulay - Zorer) at 17:40-19:30 on April 30, 2009. It will be a closed-book and closed-notes exam but you are allowed to bring one hand-written A4 sheet. The exam will cover until the end of linked lists.
Apr 22 Homework 2 has been posted.
Mar 27 Homework 1 has been posted.
Mar 27 The first midterm exam will be held at EB 203 (Ak - Garip) and EB 204 (Gulay - Zorer) at 17:40-19:30 on April 2, 2009. It will be a closed-book and closed-notes exam but you are allowed to bring one hand-written A4 sheet. The exam will cover until the end of recursion.
Mar 3 Midterm dates have been changed. New dates are:
Midterm 1 (Apr 2, 17:40-19:30)
Midterm 2 (Apr 30, 17:40-19:30)
Feb 9 Please check out the syllabus.
Feb 9 Welcome to CS 201! Please check this web page for announcements.

Course Description

This course introduces the abstract data types of lists, stacks and queues, and shows how one can implement them in C++ using fundamental data structures. It also introduces recursion and sorting algorithms.

Instructor:Çiğdem Gündüz Demir
EA 407A (Engineering Building), x3443
gunduz at cs bilkent edu tr
TA:Akif Burak Tosun
EA 529 (Engineering Building), x1401
tosun at cs bilkent edu tr
Lectures:Tue 13:40-15:30, Thu 15:40-17:30 (EB103)
Office hours:Tue 11:40-13:30
Texts: (Required) F. M. Carrano, Data Abstraction and Problem Solving with C++: Walls and Mirrors, 5th edition, Addison-Wesley, 2006.
(Recommended) H. M. Deitel and P. J. Deitel, C++ How to Program, 5th edition, Prentice Hall, 2005.
Grading policy:
Quiz(15%)
Homework(15%)
Midterms(40%)
Final(30%)

Lectures

TOPICSCONTENTS
Introduction

[ Slides ]

- Introduction to Classes and Objects (Ch.3 of Deitel book)
- Control Statements: Part I (Ch.4 of Deitel book)
- Control Statements: Part II (Ch.5 of Deitel book)
- Code examples
Functions

[ Slides ]

- Functions (Ch.6 of Deitel book)
Arrays

[ Slides ]

- Arrays (Ch.7 of Deitel book)
Pointers

[ Slides ]

- Pointers (Ch.8 of Deitel book)
Case study

[ Slides ]

- Classes: A Deeper Look, Part I (Ch.9 of Deitel book)
- Classes: A Deeper Look, Part II (Ch.10 of Deitel book)
Recursion

[ Slides ]

- Recursion: The Mirrors (Ch.2 of Carrano book)
Algorithm analysis

[ Slides ]

- Handout at library electronic reserve
Lists

[ Slides: Part 1 | Part 2 ]

- Data Abstraction: The Walls (Ch.3 of Carrano book)
- Linked Lists (Ch.4 of Carrano book)
Stacks

[ Slides ]

Stacks (Ch.6 of Carrano book)
Queues

[ Slides ]

Queues (Ch.7 of Carrano book)

Exams

  • The midterms and final will be closed-book and closed-notes exams but you are allowed to bring one hand-written A4 sheet.
  • There will be five in-class quizzes (closed-book, closed-notes, no A4 sheet is allowed). The quiz dates are announced in the syllabus. There will be NO make-up quiz.

Homework

  1. Questions, Due: April 17, 2009
  2. Questions, Due: May 11, 2009
  3. Questions, Due: May 26, 2009

Homework assignments will be posted on this page. Assignments are expected to be turned in by 18:00 on the due date. For the late assignments, each student will be given a total of three grace days (whole or partial) for the whole semester. Once these late days have been exhausted, no late assignments will be accepted. As an example, if Student A submits her/his 1st assignment 29 hours late, s/he will have used two late days and have only one day left. If Students A then submits her/his 2nd assignment 5 hours late, s/he will have used her/his remaining late day. If Student A submits her/his 3rd assignment 1 minute late, this assignment will not be accepted.

You should submit your homework by emailing it to the course TA before the deadline. Your submission must include your source code; no hardcopy (printer output) will be required if it is not announced otherwise. Always make sure that the code you submit does compile and run correctly. Late submissions should also be done through email.

Please make sure you fully understand the Bilkent University Policy on Academic Honesty / Öğrenci Disiplin İlke ve Kuralları. Cheating and plagiarism on homework assignments will be punished according to the regulations of the University.

Academic integrity is a problem on programming assignments. Please refer to the "Honor Code Statement" to understand which actions violate the academic integrity. Each student is expected to read and understand this "Honor Code Statement" and return a signed copy of this form to his/her instructor. For those who do not return the signed copy, the homework assignments will not be graded. Students caught cheating on assignments will also be subject to disciplinary action.

Related Links