CS 202 Computer Science II

Catalog Description: 

An introduction to the structuring and manipulation of information with implementation in the high-level programming language Java. Topics include: linked lists, sets, stacks, queues and trees; basic manipulation techniques including sort/merge and search algorithms; an introduction to algorithm efficiency analysis.

Prerequisite: 
MATH 207 (may be taken concurrently) and CS 201 or permission of the instructor.
Credits: 
4
Offered: 
Both semesters
Required or Elective: 
Required for the BS in CS
Level: 
Foundation
Coordinator: 
Aijuan Dong
Current Textbook: 
Data Structures and Other Objects Using Java, Fourth Edition , by Michael Main/ Prentice Hall, 2011.
Topics covered: 
  • Java Classes and Information Hiding
  • Collection Classes
  • Linked List I
  • Linked Lists II
  • Recursive Thinking
  • Generic Programming
  • Stacks and Queues
  • Trees
  • Searching and Sorting
  • Graphs
Student Learning Outcomes: 

On completing this course, the student will be able to:

  1. Identify and apply basic data structures, such as linked lists, stacks, queues, and trees, to classify and solve generally stated problems.
  2. understand basic sorting and searching algorithms, exception handling, algorithm complexity, generics, etc.
  3. Develop recursive solutions.
  4. Understand and apply object-oriented software design principles: abstraction, encapsulation, and modularity.
  5. Obtain and apply basic programming debugging and troubleshooting skills.
Relation of Course Outcomes to Program Outcomes: 

 

CS 202 Student Outcomes (SOs)
Course Learning Outcomes a b c d e f g h i j k
1. Identify and apply basic data structures or collection, such as linked lists, stacks, queues, and trees, to classify and solve generally stated problems.                
2. understand basic sorting and searching algorithms, exception handling, algorithm complexity, generics, etc.                
3. Develop recursive solutions.                
4. Understand and apply object-oriented software design principles: abstraction, encapsulation, and modularity.                
5. Obtain and apply basic programming debugging and troubleshooting skills.                  
Role in Assessment: 
Go to top