In this project, I made a program that used 3 different types of sorting algorithms for different purposes. My professor put a story spin on it to make representing much easier to relate. He represented the data structures with potion bags. One potion bag was to be a quick-acting bag, the second is a “medium” potion that is moderate speed, and the last bag is a slow bag that takes the longest to activate. These “potions” will have different performance characteristics and we have to choose which data structures match those characteristics.
For the fast potion, I chose a hash table because it’s run time is BigO(1). For the medium potion, I needed a BigO(log n), which was a Binary Search Tree. Lastly, the slow potion was an array list with a BigO(n) runtime. I learned a lot in this project as I got to apply what I learned over the course and make effective decisions. I learned to execute what data structures are good for certain situations and requirements. This helps in the real world field because there will be different sizes of data given to me and I need to figure out what structures are most effective for that job.
For more information on the requirements: click here.