This repository contains all work done for the Classification and Data Search course.
Uses the shell sort algorithm to sort data using multiple gaps to measure performance difference between them.
Uses quicksort with different partitioning schemes (Lomuto and Hoare) to sort input and measures their performance difference.
Uses radix sort for text input sorting.
Loads inputs onto a hash table and gathers data around their collisions.
Loads a 500MB+ file onto data structures (hash map, trie tree) for user search through a CLI. I've managed to make it load under 2 seconds on my computer and 11 seconds on INF's old computers, making the fastest project of the class. This was achieved simply by using a compiled, no GC language and simple underlying implementation.