May 24, 2025  
2025-26 Catalog 
    
2025-26 Catalog
Add to Favorites (opens a new window)

CS 211 - Fundamentals of Computer Science II


5 CR

This course focuses on advanced concepts in algorithm efficiency, runtime analysis, and data structures. Topics include recursion, exceptions, search and sorting algorithms, stacks, queues, linked lists, trees, priority queues, and hashing. Students will implement efficient solutions using industry-standard APIs, analyze performance using Big-O notation, and develop a deeper understanding of algorithmic design and problem-solving techniques.

Prerequisite(s): CS 210  or entry code.

Course Outcomes
  • Construct and extend classes using inheritance, and demonstrate polymorphism through objects, interfaces, and abstract classes.
  • Design data structures for complex data types to solve problems efficiently.
  • Explain the principles of recursion vs iteration and implement recursive solutions where appropriate.
  • Analyze the runtime efficiency of algorithms and the trade-off between time-space complexities
  • Implement standard error handling mechanisms in programs, using appropriate techniques to manage and respond to errors effectively
  • Create unit test cases to ensure complex data structures and algorithms are correct.
  • Understand and discuss ethical and sociotechnical issues in software development. 

 

GenEd Outcomes: Creative and Critical Thinking

  • Quantitative/Symbolic Reasoning



Find out when this course is offered




Add to Favorites (opens a new window)