Monday |
Tuesday |
Wednesday |
Thursday |
Friday |
Jan 9, First Day of Classes | Jan 10, Lecture 1: Introduction to C++ & Strings 2020 Lecture 1 (Covers our Lec 1 & 2) 2020 FALL 2020 (be careful!) Syllabus Q&A
| Jan 11, Lab 1: C++ Development, & Strings quadratic.cpp README.txt
| | Jan 13, Lecture 2: Strings & Vectorsframed_diagonal.cpp
|
Jan 16, No classes | Jan 17, Lecture 3: C++ Classes, part 1date_main.cpp date.h date.cpp
2020 Lecture 2 (Our Lec 3) | Jan 18, Lab 2: Classes main.cpp
| Jan 19, Homework 1: Text Justification due @ 11:59pmREADME.txt example.txt gettysburg_address.txt long_word.txt example_16_flush_left.txt example_16_flush_right.txt example_16_full_justify.txt gettysburg_address_70_flush_left.txt gettysburg_address_70_flush_right.txt gettysburg_address_70_full_justify.txt long_word_15_full_justify.txt provided_files.zip
| Jan 20, Lecture 4: C++ Classes, part 2students.txt student.h student.cpp student_main.cpp stats.h stats.cpp name.h name.cpp name_main.cpp assert_demo.cpp
2020 Lecture 3 (Our Lec 4)Last day to add classes |
| Jan 24, Lecture 5: Pointers and Arrays 2020 Lecture 4A: Pointers 2020 Lecture 4B: Pointer Arithmetic & Arrays
| Jan 25, Lab 3: Debugging with the Command Line Debugger point.h point.cpp line.h line.cpp roads.cpp input_a.txt input_b.txt input_c.txt input_d.txt
| Jan 26, Homework 2: Hockey Classes due @ 11:59pmREADME.txt no_penalties_or_overtime.txt no_penalties_or_overtime_output.txt 2012_small.txt 2012_small_output.txt 2012_ecac.txt 2012_ecac_output.txt 2012_all.txt 2011_all.txt provided_files.zip
| Jan 27, Lecture 6: Dynamic Memory 2020 Lecture 5A: Dynamic Memory Intro 2020 Lecture 5B: Dynamic Memory Examples DCC 308 notes
|
| Jan 31, Lecture 7: Big O Notation & Basic Recursion
2020 Lecture 7A: Algorithm Analysis Introduction 2020 Lecture 7B: Basic Recursion (we may finish in Lecture 12)
| Feb 1, Lab 4: Memory Diagramming and Debuggingbuggy_lab4.cpp first.txt middle.txt last.txt
| Feb 2, Test 1 6:00-7:50pmpractice problems
Sample solutions to the practice problems will be posted to Course Materials on Monday morning. | Feb 3, Lecture 8: Vector Implementationvec.h vec_xiao.h vec_main.cpp
2020 Lecture 6A: Vec Implementation 2020 Lecture 6B: Vec Implementation |
| Feb 7, Lecture 9: Iterators & STL Listsclasslist_ORIGINAL.cpp data.txt
2020 Lecture 8A: Iterator & STL List 2020 Lecture 8B: Example of List & Iterator | Feb 8, Lab 5: Vector Implementationvec.h test_vec.cpp
| Feb 9, Homework 3: Matrix Class due @ 11:59pmREADME.txt matrix_main.cpp sample_output.txt provided_files.zip
| Feb 10, Lecture 10: Iterators & Linked Lists
2020 Lecture 9A: Iterators continued 2020 Lecture 9B: Singly-Linked Lists
|
| Feb 14, Lecture 11: Doubly Linked Lists & List Implementationdslist_handout.h list.h list_main.cpp
2020 Lecture 10A: doubly-linked lists 2020 Lecture 10B: dslist implementation | Feb 15, Lab 6: Reversing Data: STL Vectors vs. STL Listscheckpoint1.cpp checkpoint3.cpp
| Feb 16, Homework 4: Tool Rental Lists due @ 11:59pmREADME.txt inventory_small.txt customer_small.txt output_inventory_small.txt output_customer_small.txt inventory_medium.txt customer_medium.txt output_inventory_medium.txt output_customer_medium.txt inventory_large.txt customer_large.txt output_inventory_large.txt output_customer_large.txt provided_files.zip
| Feb 17, Lecture 12: Advanced Recursionletters.txt binsearch.cpp merge_sol.cpp word_search_sol.cpp
2020 Lecture 11: Advanced Recursion |
Feb 20, No classes | Feb 21, Monday schedule | Feb 22, Lab 7: List Implementationdslist.h (partial) checkpoint1.cpp checkpoint2.cpp
| Feb 23, Homework 5: Linked Train Cars due @ 11:59pmREADME.txt main.cpp traincar.h traincar.cpp traincar_prototypes.h sample_output.txt mtrand.h mtrand.cpp provided_files.zip
| Feb 24, Lecture 13: Problem Solving, part 1 2020 Lecture 12: Problem Solving I
|
| Feb 28, Lecture 14: Operatorscomplex_lec.cpp complex_lec.h concatenation_array.cpp boomerang.cpp square.cpp
2020 Lecture 14: Operators & Friends | Mar 1, Lab 8: Recursiongrid1.txt grid2.txt grid3.txt grid4.txt start.cpp
| Mar 2, Test 2 6:00-7:50pmpractice problems
Sample solutions to the practice problems will be posted to Course Materials on Monday morning. | Mar 3, DS Lecture cancelled. Last day to drop classes |
Mar 6-10, Spring Break |
| Mar 14, Lecture 15: Associative Containers, part 1word_count.cpp search_demo.cpp
2020 Lecture 15: Maps, part 1 | Mar 15, Lab 9: Mapsphonebook.cpp
| Mar 16, Homework 6: Inverse Word Search due @ 11:59pmREADME.txt puzzle1.txt puzzle2.txt puzzle3.txt puzzle4.txt puzzle5.txt puzzle6.txt puzzle7.txt puzzle8.txt out1_onesol.txt out1.txt out2.txt out3.txt out4.txt out5.txt out6.txt out7.txt out8.txt provided_files.zip
Homework 6 Contest Results
| Mar 17, Lecture 16: Associative Containers, part 2stl_sets.pdf For HW7 two_sum.cpp word_pattern.cpp coursegrades.cpp
2020 Lecture 16: Maps, part 2 |
| Mar 21, Lecture 17: Trees, part 1ds_set_starter.h ds_set_lec17.h lec17_exercises.cpp unique_occurences.cpp
2020 Lecture 17: Trees, part 1
(Optional) Old Bonus Lecture Dr Memory Slides
2020 Dr. Memory Uncovered | Mar 22, GM Wednesday, no lab | Mar 23, Homework 7: Smash Frames due @ 11:59pmREADME.txt main.cpp mini_ult_frame_data.txt large_ult_frame_data.txt queries1_mini.txt queries1_large.txt queries2_mini.txt queries2_large.txt output1_mini.txt output1_large.txt output2_mini.txt output2_large.txt provided_files.zip
| Mar 24, Lecture 18: Trees, part 2ds_set_lec18_starter.h ds_set_lec18_moresoln.h bst_search.cpp bst_insert.cpp
2020 Lecture 18: Trees, part 2 (Our Lec 18) 2020 Lecture 19: Trees, part 3 (also Our Lec 18)
HW8 Meeting Recording
|
| Mar 28, Lecture 19: Trees, part 3ds_set_soln.h breadth_first_search.cpp erase_node.cpp height.cpp shortest_path.cpp
2020 Lecture 20: Trees, part 4 (Our Lec 19) | Mar 29, Lab 10: Tree Implementationds_set.h test_ds_set.cpp
| Mar 30, Homework 8: B+ Trees due @ 11:59pmREADME.txt hw8_test.cpp BPlusTree.h output_all.txt provided_files.zip
| Mar 31, Lecture 20: Hash Tables, part 1google_interview.txt ds_hashset_start.h hash_phonebook_code.cpp two_sum_hash_table.cpp
2020 Lecture 22: Hash Tables, part 1 (Our Lec 20) |
| Apr 4, Lecture 21: Hash Tables, part 2 most_freq_subtree_sum.cpp max_average_subarray.cpp rearrange_words_in_a_sentence.cpp good_substrings_of_size_3.cpp
2020 Lecture 23: Hash Tables, part 2 (Our Lec 21
| Apr 5, Lab 11: Hash Tablesds_hashset.h test_ds_hashset.cpp
| Apr 6, Test 3 6:00-7:50pmpractice problems
Sample solutions to the practice problems will be posted to Course Materials on Monday morning. | Apr 7, Lecture 22: Priority Queues 2020 Lecture 25: Priority Queues (Our Lec 22)
|
| Apr 11, Lecture 23: Hybrid / Variant Data Structuresqueue_using_stacks.cpp stack_using_queues.cpp trie.cpp
2020 Lecture 21: Hybrid / Variant Data Structures (Our Lec 23) | Apr 12, Lab 12: Priority Queuespriority_queue.h test_pq.cpp
| Apr 13, Homework 9: Miniblast Hash Maps due @ 11:59pmREADME.txt input_small.txt output_small.txt genome_small.txt input_medium.txt output_medium.txt genome_medium.txt genome_large.txt input_large.txt genome_larger.txt input_larger.txt provided_files.zip
| Apr 14, Lecture 24: C++ Exceptionslongest_common_prefix.cpp reverse_integer.cpp
2020 Lecture 26: ExceptionsPass/No Credit Deadline |
| Apr 18, Lecture 25: Garbage Collection & Smart Pointers 2020 Lecture 27: Garbage Collection & Smart Pointers
| Apr 19, Lab 13: Garbage Collection & Smart Pointersstop_and_copy.h stop_and_copy.cpp main_stop_and_copy.cpp ds_smart_pointers.h main_smart_pointers.cpp
| Apr 20, Homework 10: Distance Fields & Priority Queues due @ 11:59pmREADME.txt data_structures_300x300.ppm dots_1000x1000.ppm image.cpp image.h lines_100x100.ppm main.cpp priority_queue.h small_10x10.ppm squiggle_30x30.ppm tiny_5x5.ppm provided_files.zip
| Apr 21, Lecture 26: Inheritance & Polymorphismvirtual_inheritance_nesting_dolls.pdf
2020 Lecture 24: (not our) HW9 Discussion & Inheritance |
| Apr 25, Lecture 27: Concurrency & Asynchronous Computing 2020 Lecture 28: Concurrency & Asynchronous Computing
| Apr 26, Lab 14: Multiple Inheritance & Exceptionsinput.txt simple_main.cpp utilities.h simple.txt output_simple.txt
Last Day of Classes | Apr 27-28, Reading Days |
May 1-3, Other RPI Final Exams | May 4, Data Structures Final Exam 3-6pm America/New York
Spring 2023 Final Exams Schedule practice problems
| May 5, Other RPI Final Exams |