algorithms and data structure 1