DataStructures & Alogrithms With  Object-Oriented Design Patterns in C++