CS 211 Fundamentals of Computer Science II • 5 Cr.
Department
- Computer Science - Transfer
Division
Description:
Continues CS 210, with data structures algorithm analysis. Students learn to create and use arrays, records, lists, stacks queues, binary trees, strings, and sets. Other topics may include searching and sorting, abstract data types, recursion, and hashing. Prerequisite: CS 210 or entry code.
Outcomes:
After completing this class, students should be able to:
1. Explain the benefits of abstraction, modularity and encapsulation for program design, reliability and testing. 2. Explain the differences between procedural and object-oriented programming. 3. Define inheritance and polymorphism, and explain the role they play in program design. 4. Create and use new classes through inheritance and virtual functions, and design object structure interfaces and inheritance hierarchies. 5. Explain the principles of recursion versus repetition, and write recursive methods for a variety of tasks. 6. Explain, implement use, and contrast data structures including arrays, sets, lists, collections, and trees. 7. Explain and use container classes, and create linked lists. 8. Measure and evaluate program performance through running time and the use of Big-O notation. 9. Use different approaches and algorithms to search for a value or item in a data structure, such as linear and binary search techniques. 10. Explain different sorting algorithms for various applications, and apply different algorithms, from both the API and user-defined. 11. Compose design elements that facilitate troubleshooting, using Exceptions with try-catch blocks. 12. Design programs using a Graphical User Interface (GUI) and event driven programming.Offered:
- Fall 2013
- Summer 2013
- Spring 2013 (current quarter)
- Winter 2013
