Central Arizona College Back
CIS 231 Introduction to Data Structures
Credit Hours:  4
Effective Term: Fall 2017
SUN#: None
AGEC: None
Credit Breakdown: 3 Lectures, 3 Labs
Times for Credit: 1
Grading Option: Both A/F and S/U

Description: Continuation of CIS123, Introduction to Programming. Topics include stacks and queues, recursion, lists, binary search trees, iteration over collections, hashing, searching, sorting algorithms, Big-O notation, and standard collection classes. Also included is an overview of advanced topics. May lead to Oracle Program Developer Certification. S/U grading option available. Prerequisite: CIS123.

Prerequisites: CIS123

Corequisites: None

Recommendations: None

Measurable Student Learning Outcomes
1. (Synthesis Level) Develop programs that declare and use interface types. (CSLO 3)
2. (Application Level) Use object-oriented design techniques to build complex programs. (CSLO 3)
3. (Application Level) Implement simple recursive algorithms. (CSLO 3)
4. (Application Level) Implement simple sorting algorithms, such as insertion sort and selection sort. (CSLO 3)
5. (Application Level) Implement the sequential search and binary search algorithms. (CSLO 3)
6. (Application Level) Use the collection classes supplied in the Java library. (CSLO 3)
7. (Application Level) Use and work with basic structures such as linked lists, stacks, queues, binary search trees, and iterators. (CSLO 3)
8. (Evaluation Level) Compare and contrast the relative estimates of the running time of alternative algorithms using big-O estimates. (CSLO 4)
9. (Comprehension Level) Understand and explain the objective of generic programming. (CSLO 2)
10. (Comprehension Level) Discuss the use of streams in a program. (CSLO 2)
11. (Application Level) Use layout managers to arrange user-interface components in a container. (CSLO 3)
12. (Synthesis Level) Create simple Graphical User Interfaces. (CSLO 3)
13. (Comprehension Level) Understand and explain when to use sequential and random file access. (CSLO 2)
14. (Synthesis Level) Create multi-threaded and Client/Server programs. (CSLO 3)
15. (Synthesis Level) Develop programs that insert, update, and query data in a relational database. (CSLO 3)
16. (Comprehension level) Discuss ethical and social issues of the computing world. (CSLO 1)
Internal/External Standards Accreditation