Doubling List
I was tasked with implementing a doubling list. This is something like a combination of a linked list and an array list, where each node on the list contains an array two times larger than the previous. This was by far the toughest project I did in Data Structures & Algorithms. It felt like everything that could break broke! But with perseverance, I managed to get all of my unit tests to pass!