jakemckenzie's Projects
A 16 bit processor (not RISC) with six instructions: noop, store, load, add, subtract, halt.
These are the weekly assignments I created for the algorithms seminar I ran.
Revisited algorithms seminar worksheets, reworked worksheets for the winter quarter
This was the first assignment for my data structures course.
Huffman trees to store Leo Tolstoy’s War and Peace more efficiently.
Our instructor a large collection of raw text files of famous literature, including Leo Tolstoy’s War and Peace consisting of over 3 million characters and about 22000 different words (counting differences in capitalization), and he’d like to store these works more efficiently. David Huffman developed a very efficient method for compressing data based on character frequency in a message. We applied this method in a straightforward way in Assignment 3 to compress the literature but our instructor has a better idea on how to apply Huffman’s encoding.
This was my homework for Digital System Design course in SystemVerilog
An implementation of maze generation using the DJP algorithm.
The second assignment for my data structures course.
Google play scraper for Python inspired by <facundoolano/google-play-scraper>
A method for finding square root with cubic convergence. Most square root functions implemented in hardware are either done so by a lookup table or by newton's method. These modules were written as an experiment to show, with not much more hardware, you could offer more accuracy than either of the two methods commonly used in practice.
This is a graphical user interface that I implemented in MySQL
Convert PDF to HTML without losing text or format.
This is the code for exploring qsort. 6 different test cases (safe/unsafe, mid/initial pivot, sorted/unsorted)
A dynamic programming problem.
My attempt at solving the subset sum
A simple dynamic programming solution for finding the orientation of a syringe from a bounding box.
Various proofs for my algorithms course
Arduino library for servos that extends the standard servo.h library with the ability to set speed, and wait for position to complete