Fundamental characteristics and properties of computer languages, algorithmic methods of solving problems on the computer. C programming language is taught and used. Implementation of abstract data types, stacks, linear and circular lists, queues, trees, hashing functions, memory management, sorting, and searching algorithms.