TDAA Cover
This course is designed to teach techniques for the design and analysis of efficient computer algorithms through theoretical backgrounds and examples of advanced methods and data structures. Topics include asymptotic growth analysis of functions, average and worst case analysis, sorting and selection problems, advanced search trees, graph theory and related algorithms, divide and conquer and greedy programming paradigms, hashing, complexity classes of P, NP and NP-complete.


CMPS255 – Object Oriented Programming

MATH333 – Calculus III

Software Engineering, 10th Edition

This course focuses on the engineering of systems. It provides all the tools needed to understand and apply systems engineering to all types of human-made systems. It will provide students with the concepts, methodologies, models and tools needed to understand and implement the systems approach. Systems engineering (SE), or the engineering of large-scale systems, is key to achieving reliable, efficient, cost-effective products and services in diverse fields.