Algorithms and Data Structures written by youdang as exercise.