Labs
Lab 0: Preliminaries
Please try and complete before your first scheduled lab session.
Doing so will give us an opportunity to resolve any outstanding issues
during this first session.
Lab 1: Getting started, Java basics
solutions:
Task 1 ,
Task 2 ,
Task 3 ,
Task 4
Lab 2: Strings and arrays; a first look at reference types
solutions:
Task 1 ,
Task 2 ,
Task 3, Challenge
Lab 3: Static vs. object classes; writing custom/blueprint classes
solutions:
Task 2 ,
Task 3 ,
Task 4
Lab 4: Understanding inheritance and polymorphism; ArrayBag case study
solutions:
Task 1 ,
Cat.java ,
Abyssinian.java ,
Task 2 ,
Task 3 ,
ArrayBag.java
Lab 5: Recursion
solutions:
Task 1 ,
Task 2 ,
Task 2.3 ,
Task 3.1-3.3 ,
Task 3.4
Lab 6: Recursive backtracking; A first look at Big-O and Sorting Algorithm Analysis
solutions:
Task 2 ,
Task 3 ,
Task 4
Lab 7: More Sorting Analysis (Complete on your own)
solutions:
Task 1 ,
quicksort ,
Task 2
Lab 8: A first look at linked lists; StringNode class
solutions:
Task 1.1-1.3 ,
Task 1.4 ,
Task 2.1 ,
Task 2.2 ,
Task 3 ,
Task 4
Lab 9: The List ADT
solutions:
task 1 ,
task 2 ,
task 3 ,
ListClient.java
Lab 10: Stacks and Queues
solutions:
task 1 ,
task 2 ,
task 3 ,
StackClient.java
Lab 11: Binary trees and search trees
solutions:
task 1 ,
task 2.1 ,
task 2.2 (after deleting 6 ,
after deleting 15 ,
after deleting 20 ),
task 3
Lab 12: 2-3 Trees; binary-tree iterators
solutions:
task 1 ,
task 2
Last modified on April 20, 2024.