A systematic study of data structures, including arrays, stacks, recursion, queues, linear and non-linear linked lists, binary trees, splay trees, binary heaps, hashing, comparative study of searching and sorting algorithms, Huffman codes. Introduction to the analysis of algorithms...