Home
Contact Information
Announcements
Discussion Forum (LMS)
Syllabus
Learning Outcomes
Prerequistites
Course Grades
Calendar
Lecture notes
Lab materials
Homework
Test reviews
Weekly Schedule
Office Hours
Lab Times
Getting Help
Tutoring
Advice from TAs
Advice from Students
Homework
Due Date and Time
Late Day Policy
Compilers
Electronic Submission
HW Grading Criteria
Collaboration Policy &
Academic Integrity
References
Optional Textbooks
Web Resources
C++ Development
Compilers
Code Editors & IDEs
Misc. C++ Programming
Command Line Args
File I/O
string → int/float
Memory Debugging
Valgrind
Dr. Memory
|
Course Calendar
Note: Lecture and lab topics are tentative and will be updated as the term progresses.
Monday |
Tuesday |
Wednesday |
Thursday |
Friday |
Jan 20, No classes | Jan 21, Lecture 1: Introduction to C++, STL, & Strings | Jan 22, Lab 1: Getting Startedjulian.cpp README.txt
| | Jan 24, Lecture 2: Strings & Vectors |
| Jan 28, Lecture 3: C++ Classes, part 1 | Jan 29, Lab 2: Classes | Jan 30, Homework 1: Text Justification due @ 11:59pmREADME.txt example.txt example_16_flush_left.txt example_16_flush_right.txt example_16_full_justify.txt gettysburg_address.txt gettysburg_address_70_flush_left.txt gettysburg_address_70_flush_right.txt gettysburg_address_70_full_justify.txt long_word.txt long_word_15_full_justify.txt provided_files.zip
| Jan 31, Lecture 4: C++ Classes, part 2 |
Feb 3, Last day to add classes | Feb 4, Lecture 5: Pointers and Arrays | Feb 5, Lab 3: Pointers, Arrays, and the Stackprint_stack.cpp
| Feb 6, 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
| Feb 7, Lecture 6: Dynamic Memory |
Feb 10, Test 1 6-7:50pm Location: DCC 308 (Sections 1-5 & 7-9) DCC 337 (Sections 6 & 10)
| Feb 11, Data Structures lecture cancelled | Feb 12, Lab 4: Testing & DebuggingPoint2D.h Rectangle.h Rectangle.cpp
| | Feb 14, Lecture 7: Vector Implementation |
Feb 17, No classes | Feb 18, Monday schedule | Feb 19, Lab 5: Vector Implementationvec.h test_vec.cpp
| Feb 20, Homework 3: Resizable Table due @ 11:59pmREADME.txt main.cpp updated 2/15 sample_output.txt small.txt medium.txt large.txt provided_files.zip
| Feb 21, Lecture 8: Iterators |
| Feb 25, Lecture 9: Lists & Iterators | Feb 26, Lab 6: Iterators & Lists | Feb 27, Homework 4: DVD Lists due @ 11:59pmREADME.txt main.cpp requests_small.txt results_small.txt requests_medium.txt results_medium.txt requests_large.txt provided_files.zip
| Feb 28, Lecture 10: Linked Lists, part 1 |
| Mar 4, Lecture 11: Linked Lists, part 2 | Mar 5, Lab 7: List Implementationdslist.h (partial) lab7.cpp
| Mar 6, Homework 5: Linked Train Cars due @ 11:59pmREADME.txt traincar.h traincar_prototypes.h main.cpp traincar.cpp sample_output.txt MersenneTwister.h provided_files.zip
| Mar 7, Lecture 12: Recursion |
Mar 10-14, Spring Break |
Mar 17, Test 2 6-7:50pm Location: DCC 308 (Sections 1-5 & 7-9) DCC 337 (Sections 6 & 10)
| Mar 18, Data Structures lecture cancelled | Mar 19, Lab 8: Recursiongrid1.txt grid2.txt start.cpp
| | Mar 21, Lecture 13: Problem SolvingLast day to drop classes |
| Mar 25, Lecture 14: Associative Containers, part 1 | Mar 26, Lab 9: Maps | Mar 27, Homework 6: Ricochet Robots Recursion due @ 11:59pmREADME.txt README_contest.txt main.cpp board.h board.cpp puzzle1.txt puzzle1_reachable_A_3.txt puzzle1_reachable_B_3.txt puzzle1_reachable_C_3.txt puzzle1_reachable_A.txt puzzle1_one_solution.txt puzzle1_all_solutions.txt puzzle2.txt puzzle2_all_solutions.txt puzzle2_no_4_move_solutions.txt puzzle3.txt puzzle3_one_solution.txt puzzle4.txt puzzle5.txt puzzle6.txt puzzle7.txt puzzle8.txt provided_files.zip
| Mar 28, Lecture 15: Associative Containers, part 2 |
| Apr 1, Lecture 16: Trees, part 1 | Apr 2, Lab 10: Setsds_set.h test_ds_set.cpp
| Apr 3, Homework 7: Word Frequency Maps due @ 11:59pmREADME.txt main.cpp spot.txt spot_input.txt spot_output.txt hansel_and_gretel.txt (original link) hg_input_2.txt updated 3/31 hg_output_2.txt updated 3/31 hg_input_3.txt updated 3/31 hg_output_3.txt updated 3/31 wizard_of_oz.txt (original link) shakespeare.txt (original link) provided_files.zip
| Apr 4, Lecture 17: Trees, part 2 |
| Apr 8, Lecture 18: Trees, part 3 | Apr 9, No classes | Apr 10, Homework 8: Friendly Recursion due @ 11:59pmREADME.txt main.cpp graph.h person.h message.h MersenneTwister.h graph_test.txt remove_test.txt message_test.txt out_graph_test.txt out_remove_test.txt out_message_test.txt updated 4/8 twitter_39_nodes.txt new 4/8 twitter_1585_nodes.txt new 4/8 provided_files.zip
| Apr 11, Lecture 19: Hash Tables |
Apr 14, Test 3 6-7:50pm Location: DCC 308 (Sections 1-5 & 7-9) DCC 337 (Sections 6 & 10)
| Apr 15, Data Structures lecture cancelled |
Apr 16, Lab 11: Hash Tablesds_hashset.h test_ds_hashset.cpp
| | Apr 18, Lecture 20: Priority QueuesPass/No Credit deadline |
| Apr 22, Lecture 21: Inheritance & Polymorphism | Apr 23, Lab 12: Priority Queuespriority_queue.h test_pq.cpp
| Apr 24, Homework 9: Perfect Hashing due @ 11:59pmREADME.txt main.cpp image.h image.cpp car_occupancy.pbm car_hash_data.ppm car_offset.offset car_original.ppm chair.ppm lightbulb.ppm provided_files.zip
| Apr 25, Lecture 22: C++ Exceptions |
| Apr 29, Lecture 23: Operators | Apr 30, Lab 13: Operatorsmain.cpp team.h team.cpp
| May 1, Homework 10: Multiple Inheritance & Exceptions due @ 11:59pmREADME.txt main.cpp utilities.h input.txt triangles.txt triangles_output.txt quads.txt quads_output.txt provided_files.zip
| May 2, Lecture 24: Garbage Collection & Smart Pointers |
| May 6, Lecture 25: Concurrency & Asynchronous Computing | May 7, Lab 14: Garbage Collection & Smart Pointersstop_and_copy.h stop_and_copy.cpp main_stop_and_copy.cpp ds_smart_pointers.h main_smart_pointers.cpp
Last day of classes | May 8-9, Study days |
May 12-16, Other Final Exams | May 13, Data Structures Final Exam 3-6pm Location:
DCC 308
Lab sections 1, 2, 3, 4, 5, 7, & 8
DCC 324
Lab sections 6, 9, & 10
| May 14-16, Other Final Exams |
|