data structure, algorithms and its applicaitons