CSCI 1200 Data Structures
Spring 2013
Home
  Contact Information

Announcements
  Discussion Forum (LMS)

Syllabus
  Learning Outcomes
  Prerequistites
  Grading Criteria
  HW Grading Criteria

References
  Optional Textbooks
  Web Resources
  C++ Development
  Misc. Programming Info
  Memory Debugging

Getting Help
  Tutoring
  Advice from TAs
  Advice from Students

Calendar
  Lecture notes
  Lab materials
  Homework
  Test reviews

Weekly Schedule
  Office Hours
  Lab Times

Academic Integrity

Homework
  Due Date and Time
  Late Day Policy
  Compilers
  Electronic Submission

Course Calendar

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

Monday Tuesday Wednesday Thursday Friday
Jan 21
No Classes
Jan 22, Lecture 1:
Introduction, C++, STL, & Strings

Jan 23, Lab 1:
Getting Started

julian.cpp
README.txt
  Jan 25, Lecture 2:
STL Vectors, Algorithm Analysis, Recursion

  Jan 29, Lecture 3:
C++ Classes, part I

Jan 30, Lab 2:
Classes
Jan 31, Homework 1:
ASCII Font Art

due @ 11:59pm
README.txt
provided.cpp
simple_font.txt
hello_world_output.txt
hello_world_output2.txt
hello_world_output_kerning.txt
sentence.txt
sentence_kerning.txt
another_sentence.txt
Feb 1, Lecture 4:
C++ Classes, part II
Feb 4,

Last day to add courses

Feb 5, Lecture 5:
Pointers and Arrays

Feb 6, Lab 3:
Pointers, Arrays, and the Stack

print_stack.cpp
Feb 7, Homework 2:
Decathlon Classes

due @ 11:59pm
README.txt (template)
2008_medalists.txt
2008_olympics.txt
2000_olympics.txt
2004_olympics.txt
2012_olympics.txt
out_2008_medalists.txt
out_2008_olympics.txt
out_2004_olympics.txt
Feb 8, Lecture 6:
Dynamic Memory

  Feb 12, Test 1
8-10am and 10-11:50am
Location: Sage 3303

See announcements page for test section assignment.

Feb 13, Lab 4:
Testing & Debugging

Point2D.h
Rectangle.h
Rectangle.cpp
  Feb 15, Lecture 7:
Vector Implementation

Feb 18
No Classes
Feb 19
Monday schedule,
No lecture
Feb 20, Lab 5:
Vectors

vec.h
test_vec.cpp
Feb 21, Homework 3:
Jagged Arrays

due @ 11:59pm
README.txt (template)
main.cpp
sample_output.txt
small.txt
small_sample_output.txt
medium.txt
large.txt
Feb 22, Lecture 8:
Iterators

classlist_LIST.cpp
  Feb 26, Lecture 9:
Lists & Iterators

Feb 27, Lab 6:
Iterators & Lists

Feb 28, Homework 4:
Grocery Lists

due @ 11:59pm
README.txt (template)
main.cpp
simple_input.txt
simple_output.txt
medium_input.txt
medium_output.txt *updated 2/24*
dinner_input.txt
dinner_output.txt
Mar 1, Lecture 10:
Linked Lists, part I
  Mar 5, Lecture 11:
Linked Lists, part II
Mar 6, Lab 7:
List Implementation

dslist.h (partial)
code.cpp
Mar 7, Homework 5:
Linked Playing Cards

due @ 11:59pm
*updated 3/2@4:15pm*
README.txt (template)
main.cpp
playing_card.h
playing_card.cpp
node.h
deck.h
deck.cpp
sample output
sample output (w/o symbols)
MersenneTwister.h
Mar 8, Lecture 12:
Advanced Recursion

Mar 11 - Mar 15,
Spring Break, No Classes
  Mar 19, Test 2
8-10am and 10-11:50am
Location: Sage 3303

See announcements page for test section assignment.

Mar 20, Lab 8:
Recursion

grid1.txt
grid2.txt
start.cpp
  Mar 22, Lecture 13:
Problem Solving

Last day to drop courses

  Mar 26, Lecture 14:
Associative Containers, part I
Mar 27, Lab 9:
Maps

phonebook.cpp
Mar 28, Homework 6:
Robo Rally Recursion

due @ 11:59pm
README.txt (template)
README_contest.txt (template)
main.cpp
board.h
board.cpp
robot.h
robot.cpp
configuration.h
command.h
command.cpp
puzzle1.txt
puzzle1_single_solution.txt
puzzle1_all_solutions.txt
puzzle2.txt
puzzle2_all_solutions.txt
puzzle3.txt
puzzle4.txt
puzzle5.txt
puzzle6.txt
puzzle7.txt
puzzle8.txt
puzzle9.txt
Mar 29, Lecture 15:
Associative Containers, part II
  Apr 2, Lecture 16:
Trees, part I
Apr 3, Lab 10:
Sets

Apr 4, Homework 7:
Library Maps

due @ 11:59pm
main.cpp
input.txt
output.txt
med_input.txt
med_output.txt
README.txt (template)
Apr 5, Lecture 17:
Trees, part II
  Apr 9, Lecture 18:
Trees, part III

Apr 10,
No Classes
Apr 11, Homework 8:
Bidirectional Maps

due @ 11:59pm
README.txt (template)
main.cpp
output.txt
output_extra_credit.txt
Apr 12, Lecture 19:
Hash Tables

  Apr 16, Test 3
8-10am and 10-11:50am
Location: Sage 3303

See announcements page for test section assignment.

Apr 17, Lab 11:
Hash Tables

ds_hashset.h
test_ds_hashset.cpp
  Apr 19, Lecture 20:
Operators and Friends

Pass/No Credit deadline

  Apr 23, Lecture 21:
Priority Queues, part II
Apr 24, Lab 12:
Priority Queues

priority_queue.h
test_pq.cpp
Apr 25, Homework 9:
Perfect Hashing

due @ 11:59pm
image.h
image.cpp
main.cpp
README.txt (template)
car_original.ppm
car_occupancy.pbm
car_offset.offset
car_hash_data.ppm
chair.ppm
lightbulb.ppm
Apr 26, Lecture 22:
Inheritance and Polymorphism
  Apr 30, Lecture 23:
C++ Exceptions
May 1, Lab 13:
Operators

main.cpp
team.h
team.cpp
May 2, Homework 10:
Multiple Inheritance & Exceptions

due Saturday May 4th @ 11:59pm
main.cpp
input_with_types.txt
input_without_types.txt
output.txt
input_facts_changed.txt
input_names_changed.txt
output_names_changed.txt
README.txt (template)
May 3, Lecture 24:
Garbage Collection & Smart Pointers
  May 7, Lecture 25:
Concurrency and Asynchronous Computing
May 8, Lab 14:
Garbage Collection & Smart Pointers

stop_and_copy.h
stop_and_copy.cpp
main_stop_and_copy.cpp
ds_smart_pointers.h
main_smart_pointers.cpp
May 9
2-4pm
Jamie
AE 125
May 10
2-4pm
Prof Cutler
MRC 331A
May 13
3-5pm
Yao
AE 125
May 14
2-4pm
Atriya
AE 125
May 15
2-4pm
Jun
AE 125
May 16
Data Structures Exam
3-6pm
location: DCC 308