User Implemented Java Data Structures and Algorithms