Times: MWF 12:10pm - 1:00pm
Location: Sloan 169
Instructor: Nirmalya Roy
Instructor's Office Location and Hours: EME 127, M 1:00pm - 2:00pm, WF 2:00pm - 3:00pm, or by appointment
Instructor's Email: nroy at eecs dot wsu dot edu
Teaching Assistant 1: Shervin Hajiamini
Teaching Assistant1's Office Location and Hours: Sloan 343, Wednesday and Friday 1:00pm - 2:30pm
Teaching Assistant1's Email: shervin.hajiamini at email dot wsu dot edu
Teaching Assistant 2: Chenhui Yin
Teaching Assistant2's Email: chenhui.yin at email dot wsu dot edu
Course Descriptions: This course is about data structures, methods of organizing large amounts of data so they can be used efficiently, and algorithm analysis, the estimation of the running time of algorithms. Different kinds of data structures to be discussed include abstract data types (lists, stacks, queues), trees (e.g. binary search trees, splay trees, B-trees), hash tables, heaps or priority queues, disjoint sets, and graphs. Algorithms for sorting and searching, trees, and graphs will also be discussed together with their analysis. The various data structures and algorithms are to be implemented in C++ using the object-oriented programming paradigm.
Course Objectives: At the end of this course, you should be able to:
Course Prerequisites: Cpt S 122 (Data Structures), Math 216 (Discrete Structures) or equivalent
Texts:
Textbook Source Code:
Course Requirements and Grading:
Homeworks and Quizzes |
25% |
4 Programs |
30% |
2 Midterm Exams & Final Exam |
45% |
Tentative Course Schedule:
(Subject to change as the semester progresses)
Week |
Date |
Topic |
Handout |
Due |
Notes |
1 |
1/09 |
Introduction |
|||
1/11 |
Math Review I |
||||
1/13 |
Math Review II |
PPT, PDF | |||
2 |
1/16 |
No Class |
|||
1/18 |
C++ Review I |
PPT, PDF | |||
1/20 |
C++ Review II |
Quiz 1 |
PPT, PDF | ||
3 |
1/23 |
Algorithm Analysis |
PPT, PDF | ||
1/25 |
Algorithm Analysis |
||||
1/27 |
Algorithm Analysis |
MSS notes | |||
4 |
1/30 |
Algorithm Analysis |
Homework 1 | ||
2/01 |
Abstract Data Types |
PPT, PDF | |||
2/03 |
Abstract Data Types |
Quiz 2 |
|
||
5 |
2/06 |
Abstract Data Types |
Homework 1 | ||
2/08 |
Abstract Data Types |
Programming Project 1 | |||
2/10 |
Trees |
PPT, PDF | |||
6 |
2/13 |
Trees |
|||
2/15 |
Trees |
Homework 2 | |||
2/17 |
Trees |
Quiz 3 |
|||
7 |
2/20 |
No Class |
|||
2/22 |
Trees |
Programming Project 1, Homework 2 |
|||
2/24 |
Trees |
Programming Project 2 | |||
8 |
2/27 |
Review |
PPT, PDF | ||
2/29 |
Midterm Exam 1 |
||||
3/2 |
Trees |
Homework 3 | |||
9 |
3/5 |
Trees |
|||
3/7 |
Hash Tables |
PPT, PDF | |||
3/9 |
Hash Tables |
Quiz 4 |
Programming Project 2, Homework 3 |
||
10 |
3/12 |
No Class |
|||
3/14 |
No Class |
||||
3/16 |
No Class |
||||
11 |
3/19 |
Hash Tables |
Programming Project 3 | ||
3/21 |
Hash Tables / Heaps |
PPT, PDF | |||
3/23 |
Heaps |
Homework 4 | |||
12 |
3/26 |
Heaps |
|||
3/28 |
Heaps |
||||
3/30 |
Disjoint Sets |
Quiz 5 |
Homework 4 |
PPT, PDF | |
13 |
4/2 |
Review |
Programming Project 3 |
PPT, PDF | |
4/4 |
Midterm Exam 2 |
||||
4/6 |
Disjoint Sets |
||||
14 |
4/9 |
Disjoint Sets |
Programming Project 4 | ||
4/11 |
Graphs |
PPT, PDF | |||
4/13 |
Graphs |
PPT, PDF | |||
15 |
4/16 |
Graphs |
PPT, PDF | ||
4/18 |
Graphs |
Homework 5 | PPT, PDF | ||
4/20 |
Sorting |
Quiz 6 |
PPT, PDF | ||
16 |
4/23 |
Sorting |
|||
4/25 |
Sorting |
||||
4/27 |
Review |
PPT, PDF | |||
17 |
5/1 | Final Exam |
1 pm to 3 pm |
Final Exam Schedule: May 1st (Tuesday) 1:00 to 3:00 pm in Classroom (Sloan 169)
Student Course Evaluations Link: https://skylight.wsu.edu/student
Acknowledgement: Prof. Larry Holder, Dr. Teddy Yap