Various data structures implemented in C++