Course Information
Professor:
Email Address:
Office Location:
Strain 201
CS300
Data Structures
Data structures are fundamental to advanced, efficient programming. Topics including asymptotic analysis, stacks, queues, linked lists, trees, and hash tables will be covered in discussions centering around more sophisticated programming concepts, problem solving techniques, and software reusability. Prerequisite: CS 250 with a minimum grade of C. 4 credits.
Data structures are fundamental to advanced, efficient programming. Topics including asymptotic analysis, stacks, queues, linked lists, trees, and hash tables will be covered in discussions centering around more sophisticated programming concepts, problem solving techniques, and software reusability. Prerequisite: CS 250 with a minimum grade of C. 4 credits.
Schedule:
|
|
|
|
|
Week 1 |
Aug 28 |
Syllabus Linux Intro |
Syllabus 01 Linux V - Linux I |
|
Aug 30 |
Intro to C |
02 C Intro READING: pp. 1-35 |
||
Sept 1 |
Intro to
Eclipse |
Assign1 - WordSearch | 03 Eclipse CS300PrefsF17.xml SUSE Admin |
|
Week 2 |
Sept 4 |
Labor Day - No Class |
||
Sept 6 |
Makefiles Testdrivers using asserts |
04 Makefiles 04 RationalMake R - Make Basics V - MakeI V - MakeII |
||
Sept 8 |
Finish
Makefiles Abstract Datatypes |
05 ADTs |
||
Week 3 |
Sept 11 |
Stack ADT Discuss Assign #2 |
Assign2 - Generic Stack | 06 Stack
ADT READING: pp. 40-42, 79-84 |
Sept 13 | Subversion ArrayOfVoidStars I |
07
Subversion 07 ArrayOfVoidStars |
||
Sept 15 | Advanced
Poiinters |
8 Adv
Pointers |
||
Week 4 |
Sept 18 |
Finish Adv Pointers |
|
|
Sept 20 |
Dynamic Memory ArrayOfVoidStartsII |
Dynamic Memory | ||
Sept 22 |
Midterm 1 |
Review is ready |
Review |
|
Week 5 |
Sept 25 | Finish More
Pointers Finish Dynamic Memory |
Assign3 |
|
Sept 27 | Valgrind Lab maina.c lab |
|||
Sept 29 |
Discuss maina.c |
|||
Week 6 |
Oct 2 |
List ADT, pointers mainb.c lab |
List ADT ListInClass |
|
Oct 4 |
Discuss Next Assign Continue Linked Lists |
Assign4 |
||
Oct 6 |
Fall Break - No Class |
|||
Week 7 |
Oct 9 | List Traversing
w/prev & pres Queue ADT |
Interview
Problem Queue ADT |
|
Oct 11 | Singly Linked Queue | |||
Oct 13 | Singly Linked Circular Queue / Circular Stack | |||
Week 8 |
Oct 16 | Handles |
||
Oct 18 |
Go over assignment Managing Multiple Projects w/ Makefiles Rational / RationalSet |
Assign5 |
Dependency Graph |
|
Oct 20 |
Midterm 2 |
Review |
||
Week 9 |
Oct 23 | In class
exercise 1 |
CQInClass |
|
Oct 25 | In class
exercise 2 |
ValgrindHandles Lab Valgrind GDB Better Debugging |
||
Oct 27 | Finish in class
exercises |
More
Handles |
||
Week 10 | Oct 30 |
Complexity Analysis | Complexity |
|
Nov 1 |
Discuss Airport argv & argc More files |
Assign6 |
||
Nov 3 |
Finish Complexity LAST DAY TO DROP |
|||
Week 11 | Nov 6 | Hash Tables | Hash
Tables I |
|
Nov 8 |
Hash Tables | |||
Nov 10 |
Hash Tables Bit Manipulation |
Bits Hash Tables II |
||
Week 12 | Nov 13 | Function Pointers | Function
Ptrs |
|
Nov 15 | More Function Pointers svn callback code |
Assign7 |
||
Nov 17 | Midterm 3 |
Review |
||
Week 13 | Nov 20 |
Vector Lab |
||
Nov 22 |
Thanksgiving - No Class |
|
|
|
Nov 24 | Thanksgiving - No Class |
|
|
|
Week 14 | Nov 27 | Intro to Trees | Trees I |
|
Nov 29 |
More Trees plus Recursion Tree Lab I |
Recursion Toyota UA I Toyota UA II |
||
Dec 1 |
Tree Lab II | Trees
II |
||
Dec 4 | ||||
Dec 6 |
Reading Day |
|||
Dec
12 |
Final
Exam 3-5:30pm |
Review |