OMSE 515 Software Foundations

Introduction to fundamental language constructs including pointers, recursion and abstraction, and the principles of algorithmic analysis and Big-O notation. Progressively explores several foundation data structures and algorithms including linked lists, trees, hashing, and graphs which are illustrated using C, C++ and Java code fragments. Introduces selected topics in statistics and discrete mathematics, in particular, sets, set operations, propositional calculus, first-order predicate calculus and finite state machines. Registration requires permission of the OMSE program office. Recommended prerequisite: Mth 112.