CS 112
Fall 2025

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.

Other relevant information:

Lab 1: Getting started, Java basics
solutions: Task 1, Task 2, Task 3, Task 4, Extra Practice

Lab 2: Lab Practicum

Lab 3: Strings and arrays; a first look at reference types
solutions: Task 1, Task 2, Task 3, Challenge

Lab 4: Lab Practicum

Lab 5: Understanding inheritance and polymorphism; ArrayBag case study
solutions: Task 1, Cat.java, Abyssinian.java, Task 2, Task 3, ArrayBag.java

Lab 6: Lab Practicum

Lab 7: Recursion
solutions: Task 1, Task 2, Task 2.3, Task 3.1-3.3, Task 3.4
Lab 8: Sorting Analysis
solutions: Task 1, quicksort, Task 2
Lab 9: 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 10: The List ADT
solutions: task 1, task 2, task 3, ListClient.java
Lab 11: Stacks and Queues
solutions: task 1, task 2, task 3, StackClient.java

Lab 12: Binary trees and search trees