CSS 342 - Mathematical Principles of Computing

Winter 2012

Valentin Razmov

Along with CSS 343, this fast-paced course is intended to bring you up to speed for taking Junior and Senior level CSS courses. It does this by integrating fundamental mathematics of computing with detailed instruction in program design. By the end of the quarter, you will be familiar with the basics of object-oriented programming, as reflected in much of the C++ language. You will understand how to analyze a problem, design and evaluate a solution. You will know many basic data structures, algorithms, and the tradeoffs among memory usage, running time, and implementation time associated with each.
Good software engineering techniques will be used throughout. Topics include: recursion, computational complexity and algorithm analysis, logic, mathematical proofs and induction, lists, stacks, queues, sorting and searching, data abstraction, and object-oriented methods.
In short, completing the course successfully you will be on your way to becoming a professional in the field. You will also know more clearly some aspects of what a programming job involves, and if it is the right opportunity for you personally.


(Jan 05) More useful emails were sent to the class mailing list -- be sure to read carefully.

(Jan 04) Tonight I forwarded an email about how to sign up for MSDNAA access (for free access to Visual Studio, if you choose to use it for C++ programming).

(Jan 04) Welcome to CSS342! Please check your emails (@u.washington.edu) often, especially in the coming days, as I will be sending information about useful resources for getting started well in the class and making progress on your first lab assignment.