Data Structures
AVL balanced search tree
Github LinkPrimary class: AVLTree.java
Main method includes text output testing different scenarios and compares expected output against program output.
Hash Table Implementation
Github LinkPrimary 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 LinkPrimary 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 LinkPrimary 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 LinkPrimary 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.