Various Data Structures Implemented in Java