Data Structures

In the IUP curriculum, this is usually the 3rd or 4th programming class.  Often it was introducing a new programming language (PL6, Pascal, C++ or Java); always, it was introducing new language features and capabilities.  Because the purpose of the course varied somewhat, the way in which it began  (and the first couple of assignments) changed over time.  The tables below are grouped by concepts covered but that is rather loose for the first two assignments.  In addition, sometimes the first assignment had multiple parts.  Usually, there were six assignments each semester; however, not all six are listed below for each semester.  This is because some assignments were used more than once; generally, the last use of the assignment is the one listed unless the assignments involved different languages, then sometimes more than one version of the assignment appears.  For many of the older assignments, data files and output cannot be found.

New language and/or features such as records, classes, objects, GUI interfaces

Assignment Language Semester Environment Data and Helper Files Output
Classes and Methods - Ordering Parts Java Spring 2008 JRE inventory.txt   products.txt   orders.txt p1answer-s08.txt
Inheritance and Binary Files - Inventory Control Java Spring 2008 JRE orders2.txt   resale.dat (binary)  resale.htm  (displayable data in resale.dat) Missing
Classes and Methods - Customer Revenue Java Fall 2007 JRE inventory.txt  products.txt  orders2.txt See next entry
Inheritance and Binary Files - More Revenue and Prices Java Fall 2007 JRE orders2.txt  resale.dat (binary)  used.dat (binary) p2answers-f07.txt  prices.txt
Classes and Methods - Asset Report Java Spring 2007 JRE inventory.txt  products.txt p1answers-s07.txt
Inheritance and Binary Files - More Assets Java Spring 2007 JRE inventory.txt  products.txt  resale.dat (binary) productreport.dat (binary)
Arrays, Files and Reports Java Fall 2006 JRE living.txt  academics.dat (binary) p1answers-f06.txt
Using GUIs a little Java Fall 2006 JRE living.txt  academics.dat (binary) As above in a window
Interactive Database C++ Fall 2002 Visual Studio thestudents.dat  and  p1classes-h.txt used with program p1output-f02.txt
Student Information C++ Spring 1997 Turbo students.dat  p1start-cpp.txt + Keyboard input new.dat
Event Dates C++ Spring 1997 Turbo datecls-h.txt used with program; Keyboard input Missing
Day of the Week C++ Fall 1996 Turbo f96datecls-h.txt Individual results
Student Database Pascal Spring 1993 Turbo stu93.dat Similar to Student Information entry above
Polynomial Evaluation and GCD Pascal Fall 1984 CP6 Keyboard input Individual results
Palindrome Pascal Fall 1984 CP6 Keyboard input Obvious results


ArrayLists, String Manipulation, Recursion, Sets, Exceptions

Assignment Language Semester Environment Data and Helper Files Output
Common Substrings - DNA sequences Java Spring 2008 JRE toystrands.txt  strands1.txt   strands2.txt p3answer-s08.txt
Data Patterns Jave Fall 2007 JRE apples.dat (binary)  sassafras.dat (binary) p3answers-f07.txt
Map Folding Java Spring 2007 JRE maps.txt foldinganswer.txt
Disk Sorter Java Fall 2006 JRE DefineDisks.txt  DefineDisksb.txt  + Keyboard input Individual results
Disk Sorter C++ Fall 2002 Visual Studio Keyboard input Indivisual results
Winning Time C++ Spring 1997 Turbo meet.dat  standing-cpp.txt Shown in assignment
Median of Mixed Numbers C++ Fall 1996 Turbo mixednos.dat  cplex-h.txt  inssort-h.txt  p3main-cpp.txt Missing
Binomial Coefficients PL6 Fall 1983 CP6 Keyboard input Individual results
GCD and Binary Search PL6 Fall 1982 CP6 Keyboard input and Missing file Missing
Geralized Arrays PL6 Spring 1982 CP6 Missing Missing


Linked Lists, Recursion

Assignment Language Semester Environment Data and Helper Files Output
Generative Grammars Java Spring 2008 JRE sports.txt  insult.txt  bizarre.txt Random output
Generative Grammars  (almost
the same as the one above)
Java Fall 2007 JRE sports.txt  bizarre.txt  
ms.txt  promise.txt
Random output
Apothecary Weights Java Fall 2007 JRE weights.txt + Keyboard input p5answers-f07.txt  unrepresentable.txt
Cross Reference Listing Java Spring 2007 JRE reserved.txt  squareroot-cpp.txt
 curling-cpp.txt  parser3-cpp.txt  ftree-h.txt
p4answers-s07.txt
Partial Spring Registration Java Fall 2006 JRE identification.txt  registration.txt wolfeRosters.dat (binary)  wolfeSchedules.dat (binary)
Lining Up C++ Fall 2002 Visual Studio mixedup-pos.txt Missing
Student Registration C++ Spring 1997 Turbo register.dat outcome.dat
Polynomial Derivatives C++ Fall 1996 Turbo equation-cpp.txt  poly.dat  
clist-h.txt  clistf.h missing
poly-ans.txt
Polynomial Manupulation Pascal Spring 1993 Turbo or VMS main3-pas.txt Missing
Student Database Pascal Spring 1993 Turbo project1-pas.txt See Student Database in
New Language group
Student Database Pascal Spring 1986 CP6 Similar to stu93.dat Missing
Linked List Manipulation Pascal Spring 1986 CP6 None None
Enrollment Records Pascal Fall 1984 CP6 Missing Missing
Two Generations PL6 Fall 1983 CP6 Missing Missing
Absolute pointers PL6 Fall 1983 CP6 Extension of Two Generations project Missing
Sparse Matrices PL6 Fall 1983 CP6 Missing Missing
Storage Management PL6 Spring 1982 CP6 Missing Missing
College Admissions PL6 Spring 1982 CP6 Missing Missing


Stacks and Queues

Assignment Language Semester Environment Data and Helper Files Output
Managing Windows Java Spring 2008 JRE script1.txt  script2.txt p5answer-s08.txt
Choosing a Server Solution Java Spring 2007 JRE Missing p5answers-s07.htm
Credit Card use Check Java Fall 2006 JRE card-events.txt Missing
Transfers C++ Fall 2002 Visual Studio transfers.txt p4f02output.txt
Mazes C++ Spring 1997 Turbo stackcls-h.txt  maze1.dat  maze2.dat  maze3.dat  maze4.dat  maze5.dat Missing
Evaluate Infix C++ Fall 1996 Turbo expstack-h.txt Missing
Supermarket Checkout Pascal Spring 1993 Turbo or VMS data-p5.txt Missing
Syntax Analysis Pascal Spring 1993 VMS Missing Missing
Catalog Order Desk Pascal Spring 1986 CP6 Missing Missing
Evaluate Postfix PL6 Fall 1983 CP6 Keyboard input Missing
Things to Do Stack PL6 Fall 1982 CP6 Missing Missing
Things to Do Queue PL6 Fall 1982 CP6 Missing Missing
Crude Interpreter PL6 Spring 1982 CP6 Missing Missing



Trees

Assignment Language Semester Environment Data and Helper Files Output
Babies' Nmaes Java Spring 2008 JRE first-order.txt  second-order.txt See Spring 08 hashing assignment
One Person's Ancestory Java Fall 2007 JRE 3generations.txt  6generations.txt Missing
Family Tree Java Spring 2007 JRE descendants.txt p6answers-s07.txt
Consultant's Opinion Java Fall 2006 JRE card-events.txt Individual results
Ancestors C++ Fall 2002 Visual Studio ancestors.txt  ftree-h.txt Missing
Tournament C++ Spring 1997 Turbo randomft-h.txt  tourney.dat  proj6-cpp.txt Individual results
Genealogy C++ Fall 96 Turbo relate1.dat  relate2.dat  relate3.dat  relate4.dat  queue2-h.txt Missing
Tree Measures + AVL Pascal Spring 1993 Turbo or VMS None Individual results
Expression Tree Traversal PL6 Fall 1982 CP6 Contained in assignment Missing
Ralph and Wanda's Relatives PL6 Fall 1982 CP6 Missing Missing



Searching, Sorting, Hashing

Assignment Language Semester Environment Data Output
Comparing Fast Access methods Java Spring 2008 JRE first-order.txt  second-order.txt  lookFor.txt p7answers-s08.txt
Search Speed Java Fall 2006 JRE card-events.txt See assignment
Babies' Names C++ Fall 2002 Visual Studio babies.txt  origins.txt  queries.txt  babynames.dat (binary) Individual results
Radix Sort Pascal Spring 1986 CP6 Missing Missing
Linear Probing and Chaining Pascal Fall 1984 CP6 Keyboard input Individual results
Rehashing PL6 Spring 1982 CP6 Missing Missing