Week  Topic  
1  Orientation and Motivation  
2  Basic concepts for data structures, performance analysis, space and time complexity  
3  Representation of multidimensional arrays, matrix representation  
4  Record/struct, list  
5  Linked list  
6  Midterm Exam I  
7  Stack, Queue  
8  Trees, Binary Trees, Binary Search Trees  
9  Balanced Trees: AVL , LLRBT  
10  Hash Tables  
11  Midterm Exam II  
12  Graph representation  
13  String, Trie  
14  Priority Queues (Heaps)  
Final Exam 
Midterm Exams  2 x 25 
Final Exam  50 
Week  Lab  Assignment  Quiz 
1  Tutorial: Java to C++ Transition  
2  Tutorial: Java to C++ Transition  
3  Tutorial: Java to C++ Transition  PA1: Array & Matrices 

4  Tutorial: Java to C++ Transition  
5  Q1  
6  Office hour, Recitation 
PA2: Linked list 

7  Office hour, Recitation  
8  PA3: Stack & Queue 
Q2  
9  Office hour, Recitation  
10  PA4: Trees 
Q3  
11  Office hour, Recitation  
12  Office hour, Recitation 

13  Q4  
14  Office hour, Recitation 
Programming Assignments  4 x 20 
Quizes  4 x 5 
Turning in someone else’s work, in whole or in part, as your own will be considered as a violation of academic integrity. Please note that the former condition also holds for the material found on the web as everything on the web has been written by someone else.
© 2022 Hacettepe University