Java Program Samples

Data Structures

AVL balanced search tree

Github Link

Primary class: AVLTree.java

Main method includes text output testing different scenarios and compares expected output against program output.

Hash Table Implementation

Github Link

Primary class: HashTable.java

This is a hash table program designed to store key and value pairs in a hash table structure. This table utilizes buckets to handle collisions. The buckets are stored as an array list, and within each bucket, a list framework is used with a head node that has a variable next, pointing to the next node.

Graph Implementation

Github Link

Primary classes: CourseSchedulerUtil.java, GraphImpl.java

This program builds a graph from a list of given courses and corresponding prerequisite courses. In the graph created, each course is a vertex and if a directed edge exists between two courses, one is the prerequisite of another.

B+ Tree

Github Link

Primary class: BPTree.java

Implementation of a B+ tree to allow efficient access to many different indexes of a large data set. Used as part of a larger program for searching a food database and creating saved meals.

Compilers

Compiler Implementation

Github Link

Primary class: AST.java

This program implements a compiler for a fictional programming language. The compiler includes a scanner, parser, name and type analysts, and the generation of relevant assembly code.