CSCI 1200 Data Structures
Fall 2013

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

Monday Tuesday Wednesday Thursday Friday
Aug 26,
First day of classes
Aug 27, Lecture 1:
Introduction, Background, and Algorithm Analysis
Aug 28, Lab 1:
Getting Started

  Aug 30, Lecture 2:
Strings, Vectors, & Recursion
Sept 2,
No Classes
Sept 3, Lecture 3:
C++ Classes, part 1
Sept 4, Lab 2:
Classes

Sept 5, 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
provided_files.zip
provided_files.zip

Sept 6, Lecture 4:
C++ Classes, part 2
Sept 9,
Last day to add classes
Sept 10, Lecture 5:
Pointers and Arrays
Sept 11, Lab 3:
Pointers, Arrays, and the Stack

Sept 12, Homework 2:
Hockey Classes

due @ 11:59pm

README.txt
no_penalties_or_overtime.txt
no_penalties_or_overtime_output.txt
2012_small.txt updated 9/11/13
2012_small_output.txt
2012_ecac.txt updated 9/11/13
2012_ecac_output.txt updated 9/11/13
2012_all.txt updated 9/11/13
2011_all.txt updated 9/11/13
provided_files.zip updated 9/11/13
provided_files.zip

Sept 13, Lecture 6:
Dynamic Memory
  Sept 17, Test 1 Sept 18, Lab 4:
Testing & Debugging

  Sept 20, Lecture 7:
Vector Implementation
  Sept 24, Lecture 8:
Iterators
Sept 25, Lab 5:
Vector Implementation

Sept 26, Homework 3:
Undo Array

due @ 11:59pm

README.txt
main.cpp
sample_output.txt
small.txt
medium.txt
large.txt
provided_files.zip

Sept 27, Lecture 9:
Lists & Iterators
  Oct 1, Lecture 10:
Linked Lists, part 1
Oct 2, Lab 6:
Iterators & Lists

Oct 3, Homework 4:
DVD Lists

due @ 11:59pm

README.txt
main.cpp
requests_small.txt
results_small.txt
requests_medium.txt
results_medium.txt
requests_large.txt
provided_files.zip

Oct 4, Lecture 11:
Linked Lists, part 2
  Oct 8, Lecture 12:
Recursion
Oct 9, Lab 7:
List Implementation

Oct 10, Homework 5:
Linked 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
MersenneTwister.h
provided_files.zip

Oct 11, Lecture 13:
Problem Solving
Oct 14,
No classes
Oct 15,
Monday schedule
Oct 16, Lab 8:
Recursion

  Oct 18, Test 2

Last day to drop classes

  Oct 22, Lecture 14:
Associative Containers, part 1
Oct 23, Lab 9:
Maps

Oct 24, Homework 6:
Ricochet Robots Recursion

due @ 11:59pm

README.txt
README_contest.txt
main.cpp
board.h
board.cpp
puzzle1.txt
puzzle1_accessibility_3.txt
puzzle1_one_solution.txt
puzzle1_all_solutions.txt
puzzle2.txt
puzzle2_all_solutions.txt
puzzle2_no_4_move_solutions.txt
puzzle3.txt
puzzle4.txt
puzzle5.txt
puzzle6.txt
puzzle7.txt
provided_files.zip

Oct 25, Lecture 15:
Associative Containers, part 2
  Oct 29, Lecture 16:
Trees, part 1
Oct 30, Lab 10:
Sets

Oct 31, Homework 7:
Halloween Maps

due @ 11:59pm

README.txt
main.cpp
small_input.txt
small_output.txt
medium_input.txt
medium_output.txt
large_input.txt
provided_files.zip

Nov 1, Lecture 17:
Trees, part 2
  Nov 5, Lecture 18:
Trees, part 3
Nov 6, Lab 11:
Advanced Trees

Nov 7, Homework 8:
Bidirectional Maps

due @ 11:59pm

README.txt
main.cpp
output.txt
extra_credit_output.txt
provided_files.zip

Nov 8, Lecture 19:
Operators & Priority Queues, part 1
  Nov 12, Test 3 Nov 13, Lab 12:
Operators

  Nov 15, Lecture 20:
Priority Queues, part 2
  Nov 19, Lecture 21:
Hash Tables
Nov 20, Lab 13:
Hash Tables

Nov 21, Homework 9:
Distance Fields & Priority Queues

due @ 11:59pm

README.txt
image.h
image.cpp
priority_queue.h
main.cpp
tiny_5x5.ppm
small_10x10.ppm
squiggle_30x30.ppm
lines_100x100.ppm
data_structures_300x300.ppm
dots_1000x1000.ppm
provided_files.zip

Nov 22, Lecture 22:
Inheritance & Polymorphism
  Nov 26, Lecture 23:
C++ Exceptions

Pass/No Credit deadline

Nov 17-19,
No classes
  Dec 3, Lecture 24:
Garbage Collection & Smart Pointers
Dec 4, Lab 14:
Garbage Collection & Smart Pointers

Dec 5, Homework 10:
Multiple Inheritance & Exceptions

due @ 11:59pm

README.txt
main.cpp
utilities.h
input.txt
output.txt
triangles_only.txt
quads_only.txt
provided_files.zip

Dec 6, Lecture 25:
Concurrency & Asynchronous Computing
Dec 9,
Office Hours
Jun
10am-noon
AE 119 lounge
Dec 10,
Office Hours
Prof Cutler
3-5pm
MRC 331A
Dec 11,
Other Final Exams

Office Hours
Rich
1-3pm
AE 119 lounge

Dec 12,

Data Structures Final Exam
11:30-2:30pm
Location: DCC 308

 

Dec 13,
Other Final Exams
Dec 16-17,
Other Final Exams