explain which data structures were implemented