King's  Logo

COURSE NUMBER: CMPT 302 
COURSE TITLE: Data Structures (Formerly CMPT 270)
NAME OF INSTRUCTOR: Dr. Amy Feaver
CREDIT WEIGHT AND WEEKLY TIME DISTRIBUTION: credits 3(hrs lect 3 - hrs sem 0 - hrs lab 3)
COURSE DESCRIPTION: The objective of this course is to introduce the basic concepts of programming data structures, including how to select and design data structures that are appropriate for particular applications. Topics include stacks, queues, lists, trees, search trees, graphs, and sets. This course provides a mixture of theoretical knowledge and practical experience. The study of data structures and algorithms is carried out within an object-oriented framework and programming language.

Prerequisites: CMPT 275
REQUIRED TEXTS: Main, Michael and Savitch, Walter (2011) Data Structures and Other Objects Using C++ [4th edition] 
MARK DISTRIBUTION IN PERCENT:
Lab Assignments15%
Written Assignments15%
Quizzes20%
First Exam25%
Second Exam 25%
100%
COURSE OBJECTIVES: The course is designed primarily to teach students how to use, design, and develop data structures using the C++ language. Secondarily the course teaches students how to use object oriented design (OOD) to solve a particular problem. Students will get hands-on experience designing and implementing data structures such as arrays, linked lists, stacks, queues, and binary trees. Students will also gain experience with the data structures provided by C++'s Standard Template Library (STL) to be familiar with professionally written code. However, the emphasis is on teaching students how to develop their own data structures and developing an appreciation for standardizeddata structure code such as that provided by STL. 
COURSE OUTLINE:
  • Phases of Software Development 
  • Abstract Data Types and C++ Classes 
  • Container Classes 
  • Pointers and Dynamic Arrays 
  • Linked Lists 
  • Stacks 
  • Queues 
  • Recursion
  • Trees
  • Big-O Notation
  • Basic Graphs


Required texts, assignments, and grade distributions may vary from one offering of this course to the next. Please consult the course instructor for up to date details.

© The King's University
Maintained By Institutional Research