CS 201: Fundamental Structures of Computer Science I
Fall '12

Announcements

Dec 24 Homework 5 has been posted. It is due by 23:59 pm on Thursday, January 3rd.
Dec 7 Homework 4 has been posted. It is due by 23:59 pm on Monday, December 24th.
Nov 28 Homework 3 has been posted. It is due by 23:59 pm on Thursday, December 6th. You can download the homework files from here: findMedian.h and findMedian.cpp.
Nov 8 Homework 2 has been posted. It is due by 6:00 pm on Monday, November 26th.
Nov 6 The midterm exam will be held at EB 101-104, 201-202 during 18:00-20:00 on Friday, November 16th, 2012. It will be a closed-book and closed-notes exam and no A4 sheet will be allowed.
Oct 16 Homework 1 has been posted. It is due by 6:00 pm on Friday, November 2nd. You can download the sample files from here: hw1_files.zip.
Sep 12 Please check out the syllabus.
Sep 12 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 algorithm analysis.

Instructors:Cigdem Gunduz Demir (Sections 1 and 2)
EA 423 (Engineering Building), x3443
gunduz at cs bilkent edu tr
Office hours: By appointment
Aynur Dayanik (Sections 3 and 4)
EA 426 (Engineering Building), x3441
adayanik at cs bilkent edu tr
Office hours: By appointment
TAs:Salim Arslan
salima at cs bilkent edu tr
Tunc Gultekin
tunc.gultekin at bilkent edu tr
Can Fahrettin Koyuncu
koyuncu at cs bilkent edu tr
Gulden Olgun
gulden at cs bilkent edu tr
Lectures: Mon 8:40-10:30, Wed 10:40-11:30, EB102 (Section 1)
Mon 10:40-12:30, Thu 9:40-10:30, EB102 (Section 2)
Mon 10:40-12:30, Thu 9:40-10:30, EB103 (Section 3)
Mon 8:40-10:30, Wed 10:40-11:30, EB103 (Section 4)
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, 8th edition, Prentice Hall, 2005.
Grading policy:
Quiz(15%)
Homework(20%)
Midterms(30%)
Final(35%)
The instructors reserve the right to set thresholds for passing grades.

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
- Recitation 1: Part 1 | Part 2 | Part 3
Functions

[ Slides ]

- Functions (Ch.6 of Deitel book)
Arrays

[ Slides ]

- Arrays (Ch.7 of Deitel book)
- Recitation 2
Pointers

[ Slides ]

- Pointers (Ch.8 of Deitel book)
- Recitation 3
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
- Recitation 4
Lists

[ Slides: Part 1 | Part 2 ]

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

[ Slides ]

Stacks (Ch.6 of Carrano book)
Queues

[ Slides ]

Queues (Ch.7 of Carrano book)

Exams

  • The midterm and final will be closed-book and closed-notes exams.
  • There will be five in-class quizzes. Quizzes will be given in class with advance notice. The quizzes will be closed-book and closed-notes. There will be NO make-up quiz. Please check the quiz times from the syllabus. There will be recitation before each of these quizzes. Please also check the recitation times from the syllabus.

Homework

Homework assignments will be posted on the course web site about two weeks before their due date. 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. Note that no late submission will be allowed for the last homework.

After you have submitted your homework, we (instructors or TAs) may, randomly and without prior notice, question you on your answers. If you fail to answer these questions to the satisfaction of the TA/instructor, you may be charged with cheating on your homework. So, make sure you do the homework assignments yourself, and do not turn in anything that you do not understand completely.

Academic Integrity

Copying or communicating during an exam is considered as cheating. Students caught cheating in an exam will be subject to disciplinary action, as explained in the "Student Disciplinary Rules and Regulation".

Cheating on homework assignments is prohibited. Students caught cheating on assignments will also be subject to disciplinary action.