A World Class University
Department of Computer Science
COURSE DESCRIPTION
Course Code
CS-203
Course Title
Data Structures
Credit Hours
4
Category
Core
Prerequisite
Knowledge and Experience in Programming Fundamentals and Object Oriented Programming
Expertise in design, implementation, testing, and strong debugging of object-oriented programs.
Inner Classes and Exception Handling
Amis and Objectives
“An apprentice carpenter may want only hammer and saw, but a master craftsman employs many precision tools. Computer programming likewise requires sophisticated tools to cope with complexity of real applications and only practice with these tools will build skill in their use. (Robert L. Kruse Data Structure and Program Design)”. This subject deals to make students convenient in building a memory and time efficient data structures for the implementation of large-scale (data intensive) computer systems.
Learning Outcomes
Along with many others following are fundamentals learning outcomes for students that are expected through this course
Apply appropriate fundamental data structures and abstract data types (ADT) such as bags, lists, stacks, queues etc and heaps: min/max heap, min-max heap and some advance hierarchal data structures like B-Trees: 2-3 tree, 2-3-4 tree and hash tables, and graphs in problem solving.
Apply object-oriented principles of polymorphism, inheritance, and generic programming when implementing data structures through their ADTs.
Create alternative i.e. problem specific representations of ADTs either from implementation or the standard libraries for problem solving.
Apply recursion as a problem solving technique.
Determine appropriate ADT’s and data structures for various sorting and searching algorithms.
Determine time and space requirements of data structures, and common sorting and searching algorithms
Course Outline / Syllabus
Topics: Introduction: Introduction to Course, Review of Object Oriented Programming Concepts.