DPR 212 - Data Structures & Algorithms

Course Description

This course focuses on problem analysis, algorithm design and refinement, and computer programming. Selection, loops, functions, parameter passing, arrays, and sorting and searching techniques are examined using C++. Software engineering methods and structured style and object oriented programming are emphasized. Upon successful completion of this course, the student should be able to: Discuss software engineering and develop programs using good programming style and object oriented programming techniques. Use simple and advanced data types including linked lists, stacks, queues, and trees. Analyze the efficiency of various algorithms for looping, recursion, sorting, and searching. Use abstract data types, containers and class templates, encapsulation, inheritance, and polymorphism. Evaluate simple systems concepts such as input/output buffers, parameter passing mechanisms, and memory management.

Credit Hours: 4
Lecture Hours: 4


Course Prerequisites: MAT 131 or MAT 160 and DPR 226 or DPR 205