some basic datastructures I studied in the past to help me learn OOP