An overview
The course is structured to take students from introductory knowledge of C++ to higher levels and to address some key areas of computer programming and algorithm design. Topics include: review of class hierarchies, inheritance, friends, polymorphism, and type systems; recursion; OO design principles, abstract data types, testing, and software reuse; introductory data structures: linked lists, stacks, queues, trees, heaps, Graphs; algorithmic strategies for searching and ordering data in these structures; introductory complexity analysis.
Two Learning Outcomes
Program C++ in 1OO paradigm,
2 explain the basic calculation algorithm,
3 Analyze algorithms and determine key algorithm strategies,
4 Demonstrate familiarity with basic software engineering practices,
5 Demonstrate knowledge of programming language design issues,
6 Competently learn software concepts in small groups.
7 Use abstract data types to help solve programming problems
</pc2dhcdsb”>