Académique Documents
Professionnel Documents
Culture Documents
ICS 202: Data Structures (3-3-4) Syllabus First Semester 2013-2014 (131)
Website: Blackboard (WebCT) and http://www.ccse.kfupm.edu.sa/~ics202. Class Time, Venue and Instructor Information:
Lecturer Sec. 01 Time UTR 10:00 - 10:50 Venue 24-146 Instructor Emad Ramadan Office: 23-64-2 Phone: 03-860-1148 E-mail: eramadan@cs.edu.sa Sami Zhioua Office: 22- 101 Phone: 03-860- 1251 E-mail: zhioua@kfupm.edu.sa Ahmad Irfan Office: 22-148-2 Phone: 03-860-1243 E-mail: irfanics@kfupm.edu.sa Office Hours UTR 9:00am 10:00am Or by appointment
02
24-250
51 51
Text Books:
Data Structures and Algorithms in Java, 3rd Edition, Adam Drozdek, Thomson Learning, ISBN 978-981-4239-23-3.
Course Objectives:
The objectives of this course are to: 1. Introduce students to fundamental data structures; their algorithms, implementations and applications. 2. Teach students how to analyze the efficiency of the fundamental data structures in terms of both time and space so that they are able to decide what data structure is suitable for a given problem.
1. Implement various data structures and their algorithms, and apply them in implementing simple applications. 2. Apply the concept of information hiding in designing data structures. 3. Design moderately complex data structures using reusable components. 4. Design, configure, and use user-defined Java packages.
Assessment Plan:
Assessment Tool Laboratory Assignments 4 Homework Assignments (2.5% * 4) Active Participation 5 Quizzes, 2% each EXAM 1: Sunday 6 October 2013, 6-8pm EXAM 2: Sunday 24 November 2013, 6-8pm Final Exam: Sunday 29 December 2013, 7:00pm Weight 20% (see Lab Guidelines) 10% 05% 10% 15% 15% 25%
Main Topics and Their Coverage in Lectures, Labs and the Text Books (Tentative)
Topics of Coverage Number of Lectures
Number of Laboratories
2 0 1 1 1 4 2 1 0
Lecture Slides & Text Book References Lectures 1-2, Drozdek Chapter 1 Lectures 3-5, Drozdek Chapter 2 Lectures 6-8, Drozdek Chapter 3 Lectures 9-10, Drozdek Chapter 4 Lectures 11-15, Drozdek Chapter 5 Lectures 16-28,Drozdek Chapters 6 and 7, Heap Sort (Drozdek pg 484) Lectures 29-37, Drozdek Chapter 8 Lectures 38-40, Drozdek Chapter 10 Lectures 41-45, Drozdek Chapter 11
Review of Object Oriented Principles Introduction to Algorithm Analysis Review of Linked Lists Review of Stacks & Queues Recursion and Recursive Algorithms Tree Structures and their Applications Graphs and Graph Algorithms Hashing Techniques Compression Techniques
2 3 3 2 5 12 8 3 4
Notes:
All course material will be made available on Blackboard. Attendance will be checked each class. An unexcused absence can become an excused absence ONLY by an official letter from the Dean of Students office. Students are expected to be courteous toward the instructor, the lab instructor and their classmates throughout the duration of this course. All cell phones and pagers must be turned off during class and exams. Soft copies of homework assignments (according to the instructions given with each assignment) are to be submitted, through Blackboard Assignment Submissions, by the due date and time indicated. No late homework will be accepted. Discussing questions among your classmates and on Blackboard is highly encouraged. Copying homework solutions from each other is NOT permitted and will be considered CHEATING. Material covered in homework assignments, which maybe outside the material presented in class, are required to be mastered by the students and can be tested on in quizzes, major exams and/or final exams. 24-Hour Policy: One has 24 hours to object to the grade of a homework, quiz or a major from the end of the class time in which the graded exam/homework papers have been distributed. If for some reason you cannot contact the instructor within this period, send him an email requesting an appointment. The email should be sent within the 24-hour time period. Exams, homework assignments and quizzes are generally CHALLENGING. Check the Blackboard course page and the ICS 202 Webpage regularly for announcements and updates. Active Participation will be assessed in the form of fruitful participation in class discussions and/or on Blackboard discussions list.
Recursion
HW2 Due
Lab Quiz 1
6 HW3 Assign 7
10
9 HW3 Due 10
11
HW4 Assign
Lab Quiz 2
12
11
13
12 HW4 Due 13
14
15
14
Lab Guidelines:
For the Labs, you must store all your work in a package ics202 on your z-drive. We shall be adding files to this package in each lab. Your lab exercises should be stored in sub-packages lab01, lab02, etc. You are required to observe this package structure throughout the semester.
1. Grade Distribution: 6% Participation (0.5% * 12) 7% Two Laboratory Quizzes (3% + 4%) 7% One Laboratory Project (a) There will be no make-up for missed laboratory quizzes. (b) A student will not be allowed to take a laboratory quiz in a different section; unless permitted by the laboratory instructor to do so. (c) Each laboratory quiz will be an open-book programming quiz. (d) A student will be given zero in a quiz if he misses a lab quiz in his section without an official excuse or if he copies even a small portion of his quiz from another student. All students involved in a cheating offence will get a zero grade. 2. Announcement of Laboratory quizzes: The dates of each lab quiz are in the course syllabus. You are required to know these dates. Students may or may not be reminded about the quizzes. 3. Preparation for each laboratory session: A student is required to prepare himself for a laboratory session by reading the laboratory document for that session, by studying the code, and by reading all lecture material related to the session. THIS PREPARATION IS ESSENTIAL FOR A STUDENT TO BE ABLE TO DO THE LABORATORY TASKS. The lab instructor will not conduct lectures; he may just elaborate on specific issues related to the lab session. 4. Laboratory Quiz solutions will be discussed in the appropriate laboratory sessions. Solutions will not be posted. This is to encourage student participation. 5. Complaints regarding Laboratory quiz grades must be submitted to the laboratory instructor within 24 hours of the posting of the grades for that particular quiz. 6. Laboratory Instructors Office Hours: Students are encouraged to use the office hours to clarify any part of the laboratory tasks that is not clear; however the instructor will only provide hints and not solve a task. 7. Some aspects of the laboratory tasks may be asked in the ICS 202 major exams and the final exam. Students are thus required to take the laboratory part of this course seriously. 8. Laboratory Project will be assigned during the 6 th Lab and is required to be submitted by Lab 13 . The lab project will be given as a problem statement and students are expected to come up with a design and implementation of their programming solution. More details will be given within the project itself.