CSCE 270 -- Data Structures
Spring 2012, Dr. Kenneth Blaha

Home Syllabus Schedule Assignments Labs Useful Links

Labs


Programming Guidelines
To receive full credit your program should meet the following style guidelines:
  1. Include as part of your documentation a program header with the following format (in the primary class):
      Name: Your Name
      Assignment: Lab Number
      Title: Program title
      Course: CSCE 270
      Lab Section: Your lab section number
      Semester: Spring 2012
      Instructor: Kenneth Blaha
      Date: the current date
      Sources consulted: any books, individuals, etc consulted
      Program description: description of what your program does
      Known Bugs: description of any known problems
      Creativity: anything extra that you added to the lab, please be very specific here
     
  2. Javadoc compatable comments at the beginning of every class and method describing what it does, the return value, each parameter, and any exceptions thrown.
  3. Make use of methods where appropriate
  4. Use meaningful identifier names
  5. Improve readability by using consistent indentation of compound statements, loops, if statements, etc.
  6. Make use of local variables and private class members as appropriate (information hiding).

Turning In Lab Assignments
Before class on the day that programs are due, students should electronically submit their lab files using http://www.cs.plu.edu/submit.

  1. IMPORTANT: Make sure you choose the correct assignment number when submitting your files.
  2. Do not submit bytecode files (files ending in .class). Just submit your java code files (files ending in .java) and data files needed to run your program.
  3. You may find it convenient to zip all the required files and then submit the .zip file.
In class on the day that the labs are due, students will hand in the following (stapled together):
  1. A lab grade sheet--properly filled in. This should be the first page.
  2. A hard copy of the source code including any code that you wrote or modified. Hard copies of source code taken directly from the text, or given to you when the lab is assigned, and which have not been modified do not need to be turned in. However, all source files should be electronically submitted.
  3. Instructions on how to run each program for the lab (e.g., java testMain).
  4. Additional items specified in the lab assignment or by the instructor.
  5. Optional: Suggestions for improving the assignment.
Late Programs: Scores will be reduced 20% for each weekday late. See the syllabus.

Note: In case of difficulties completing the assignment try to submit a working program even if parts of the program do not work correctly. Include a "known bugs" section in your documentation to specify any known problems. This type of section is common in unix software. Expect extra points off for testing any time the grader finds problems not covered in your "known bugs" section.

Lab Assignments

Lab Assignment Topic Due Lab-CAT
Lab 1 Description
Shape.java file
Shape Class Hierarchy, Eclipse, JUnit 2/21/2012 Minute Paper
Lab 2 Description
PandemicView.java   PandemicController.java
Pandemic.jar   defaultFile.txt   bad12x12.txt
Pandemic -- File I/O and Two Dimensional Arrays update ***3/5/2012*** Minute Paper
Lab 3 Description
ArrayList and HugeInteger 3/12/2012 Minute Paper
Lab 4 Description
SingleLinkedList.java
Single-Linked List 3/19/2012 Minute Paper
Lab 5 Description
KWLinkedList.java
Double-Linked List and Iterators 4/4/2012 Minute Paper
Lab 6 Description
SyntaxErrorException.java
Stack ADT (Infix Evaluator) 4/16/2012 Minute Paper
Lab 7 Description
Queues and Mazes 4/23/2012 Minute Paper
Lab 8 Description
Boggle and Recursion (Recursion (Recursion) ) 4/30/2012 Minute Paper
Lab 9 Description Binary Search Trees and Recursion 5/7/2012 Minute Paper
Lab 10 Description
Sorting Implementations
Sorting Analysis
5/18/2012
Minute Paper