These are mostly from Comp Sci homework, and consist of a variety of different classes with a variety of different functions. These are written primarily in Java which was out language of choice for learning object oriented programming.
This is a brute force pathfinding algorithm meant to be used for small grids of squares. It can deal with obstructed spaces, and will recursively search paths to find the shortest path to the destination. It also contains a Java Swing UI visualizer/interface.
This is an implementation of single and double linked lists in Java, plus extensive test classes for each. This was another early Comp Sci assignment, but one that we utilized for many other projects, such as porting it to C and implementing it in larger classes.
This was an implementation of the recursive merge sort class, one of the earliest assignments I still have saved. It was again written in Java, and we later used it to sort the linked list we created afterwards.
Miscellaneous Undocumented Projects
AI Face Tracking Camera
As part of a group, we developed and trained an image recognition model trained to detect faces, then ported it to an arduino nano. We then connected a camera and pair of servos to the arduino to have it rotate to face any face detected in the image taken by the camera.
Linux Kernel Scanner Module
For Operating Systems class, I had to develop an implementation of a scanner driver to install and run on linux directly. This would take any input via write, and return the input separated by a default or custom specified set of separators. This had to be implemented and interface directly with the linux kernel without leaking any memory or causing any segmentation faults.