Course content: Refining and extending the concepts and skills introduced in CSS342, you further develop problem-solving, design, programming, and testing competencies. You will know many basic data structures, algorithms, and the tradeoffs among memory, running time, and implementation time associated with them. Topics include: data abstraction, trees, hash tables, priority queues (heaps), graphs, computational complexity and algorithm analysis. Formal automata theory as it applies to programming languages is introduced including regular expressions, grammars, and Turing machines.
CSS Windows lab:   UW1-310;   Linux lab: UW1-320
Do not allow non-CSS students in our labs (so they will not consume our resources). If resource consumption is abused, your lab fee will be increased.