Skip to main content

Course Calendar

Note: Lecture and lab topics are tentative and will be updated as the term progresses.

Online lectures can be found on the Mediasite Channel.

Monday Tuesday Wednesday Thursday Friday
Jan 13,
First day of classes
 
"Install Fest" (optional)
6-8pm
Location: DCC 318
Jan 14, Lecture 1:
Introduction to C++, STL, & Strings

Jan 15, Lab 1:
Getting Started

quadratic.cpp
README.txt

 Jan 17, Lecture 2:
Strings & Vectors

Jan 20,
No classes
Jan 21, Lecture 3:
C++ Classes, part 1

Jan 22, Lab 2:
Classes

main.cpp

Jan 23, Homework 1:
Moire Strings

due @ 11:59pm

README.txt
abcde_9_square.txt
abcde_9_right_triangle.txt
abcde_9_isosceles_triangle.txt
dots_21_square.txt
hi_21_right_triangle.txt
blocky_21_isosceles_triangle.txt
provided_files.zip

Jan 24, Lecture 4:
C++ Classes, part 2

assert_demo.cpp
students.txt
student.h
student.cpp
student_main.cpp
std_dev.h
std_dev.cpp

Last day to add classes

 Jan 28, Lecture 5:
Pointers and Arrays

Jan 29, Lab 3:
Pointers, Testing & Debugging

Point2D.h
Rectangle.h
Rectangle.cpp

Jan 30, Homework 2:
Decathalon Classes

due @ 11:59pm

README.txt
2000_olympics.txt
2004_olympics.txt
2008_olympics.txt
2008_medalists.txt
2012_olympics.txt
out_2008_medalists_scores.txt
out_2008_medalists_points.txt
out_2008_olympics_scores.txt
out_2008_olympics_points.txt
provided_files.zip

Jan 31, Lecture 6:
Dynamic Memory

 Feb 4, Lecture 7:
Vector Implementation

vec_lec7.h

Feb 5, Lab 4:
Memory Diagrams & Memory Debugging

buggy_lab4.cpp
first.txt
middle.txt
last.txt

Feb 6, Test 1
6-7:50pm
Feb 7, Lecture 8:
Big O Notation & Iterators

classlist_ORIGINAL.cpp
classlist_data.txt

 Feb 11, Lecture 9:
STL Lists & Vector Iterators

classlist_ITER.cpp
classlist_LIST.cpp

Feb 12, Lab 5:
Vector Implementation

vec.h
test_vec.cpp

Feb 13, Homework 3:
Connect Four

due @ 11:59pm

README.txt
connect_four_main.cpp updated 2/8
sample_output.txt updated 2/8
provided_files.zip

Feb 14, Lecture 10:
Singly Linked Lists & Basic Recursion

binsearch.cpp
lec10_ex.cpp

Feb 17,
No classes
Feb 18,
Monday schedule
Feb 19, Lab 6:
Reversing Data: Vectors vs. Lists vs. Homemade Linked Lists

checkpoint1.cpp
checkpoint3.cpp

Feb 20, Homework 4:
Debugging & Grocery Lists

Check Submitty for message with provided file link
due @ 11:59pm

README.txt
See Submitty for materials

Feb 21, Lecture 11:
Doubly Linked Lists & List Implementation

lec11_ex.cpp
dslist_handout.h
dslist_partial.h

 Feb 25, Lecture 12:
Advanced Recursion

merge_sol.cpp
word_search_sol.cpp
letters.txt
binsearch.cpp

Feb 26, Lab 7:
List Implementation

dslist.h (partial)
lab7.cpp

Feb 27, Homework 5:
Playing Cards

due @ 11:59pm

README.txt
main.cpp
playing_card.h
playing_card.cpp
node.h
deck.h
deck.cpp
output.txt
output_no_symbols.txt
provided_files.zip

Feb 28, Lecture 13:
Problem Solving, part 1

 Mar 3, Lecture 14:
Associative Containers, part 1

word_count.cpp

Mar 4, Lab 8:
Recursion

grid1.txt
grid2.txt
grid3.txt
grid4.txt
start.cpp

Mar 5, Test 2
6-7:50pm
Mar 6,
No DS lecture / Last day to drop classes
Mar 9-13,
Spring Break
Mar 16-20,
Spring Break Extended
 Mar 24, Lecture 15:
Associative Containers, part 2

coursegrades.cpp
odd_count.cpp

Mar 25,
No classes, GM week
Mar 26, Homework 6:
Ricochet Robots

due @ 11:59pm

README.txt
puzzle1.txt
puzzle2.txt
puzzle3.txt
puzzle4.txt
puzzle5.txt
puzzle6.txt
puzzle7.txt
puzzle8.txt
puzzle1_one_solution.txt
puzzle1_all_solutions.txt
puzzle1_reachable_A_3.txt
puzzle1_reachable_B_3.txt
puzzle1_reachable_C_3.txt
puzzle1_reachable_A.txt
puzzle2_all_solutions.txt
puzzle2_no_4_move_solutions.txt
puzzle3_one_solution.txt
provided_files.zip

Mar 27, Lecture 16:
Trees, part 1

ds_set_starter.h
ds_set_lec16.h
lec16_exercises.cpp

 Mar 31, Lecture 17:
Trees, part 2

ds_set_lec17_starter.h
ds_set_lec17_moresoln.h
lec17_split_solutions.pdf

Apr 1, Lab 9:
Maps

Apr 2, Homework 7:
Super Smash Bros. Frames

due @ 11:59pm

README.txt
main.cpp
mini_ult_frame_data.txt
queries1_mini.txt
output1_mini.txt
queries2_mini.txt
output2_mini.txt
large_ult_frame_data.txt
queries1_large.txt
output1_large.txt
queries2_large.txt
output2_large.txt
provided_files.zip

Apr 3, Lecture 18:
Trees, part 3

ds_set_soln.h
lec18_ex1.cpp
lec18_ex2.cpp
bfs_code.cpp

 Apr 7, Lecture 19:
Hash Tables, part 1

ds_hashset_start.h
google_interview.txt
hash_phonebook_code.cpp
ds_hashset_soln.h

Apr 8, Lab 10:
Binary Search Trees & Sets

ds_set.h
test_ds_set.cpp

Apr 9, Homework 8:
Ropes

due @ 11:59pm

README.txt
main.cpp
Rope.h updated 4/4
Rope_provided.cpp
Rope_student.cpp
output_basic.txt
provided_files.zip

Apr 10, Lecture 20:
Hash Tables, part 2
& Priority Queues, part 1

stacksnqueues.cpp

 Apr 14, Lecture 21:
Priority Queues, part 2

leftist_heap.cpp

Apr 15, Lab 11:
Hash Tables / More Trees

ds_hashset.h
test_ds_hashset.cpp

Apr 16, Test 3
6-7:50pm
Apr 17, Lecture 22:
Operators

 Apr 21, Lecture 23:
Garbage Collection & Smart Pointers

Apr 22, Lab 12:
Priority Queues

priority_queue.h
test_pq.cpp

Apr 23, Homework 9:
IMDB Hashing

due @ 11:59pm

README.txt
small_example_movies.txt
small_example_actors.txt
small_example_input.txt
small_example_output.txt
small_example_input2.txt
small_example_output2.txt
top250_example_movies.txt
top250_example_actors.txt
top250_example_input.txt
top250_example_output.txt
top250_example_input2.txt
top250_example_output2.txt
3k_example_movies.txt
3k_example_actors.txt
starter_code.cpp
provided_files.zip

Apr 24, Lecture 24:
Inheritance & Polymorphism

virtual_inheritance_nesting_dolls.pdf

 Apr 28, Lecture 25:
C++ Exceptions

Apr 29, Lab 13:
Multiple Inheritance & Exceptions

input.txt
simple_main.cpp
utilities.h
simple.txt
output_simple.txt

Last day of classes

Apr 30-May 1,
Reading days
May 4, Data Structures Final Exam
Released at 8am

Final Exams Schedule

May 5-May 8,
Other RPI Final Exams