Data Structure and Algorithm in Cpp