|
|
CIS 15CData Structures
Prerequisites:
CIS 15BG or 26A
Advisory:
English Writing 211 and Reading 211 (or Language Arts 211), or English as a Second Language 272 and 273
Course Description:
Stacks, queues, linked lists, trees, and graphs; internal and external sorting; use of recursion; hashing; structured programming; and abstract data type concepts.
Text required:
Data Structures: A Pseudocode Approach With C. by Richard F. Gilberg. & Behrouz A. Forouzan second edition, Thomson 2004
Useful Links:
To test your proficiency in C before enrolling in this class, go to
http://voyager.deanza.fhda.edu/~cistest
To review pointers, go to "A Tutorial on Pointers and Arrays in C"
http://pw1.netcom.com/~tjensen/ptr/pointers.htm
Course objectives:
Upon completion of the course, the student will:
- Design programs using abstract data type concepts.
- Describe operations on and applications for stacks, queues, linked lists, trees, and graphs.
- Implement stacks, queues, linked lists, trees, hashing algorithms, and graphs.
- Create recursive algorithms, and relate efficiency to uses of recursion.
- Describe advanced sorting concepts (e.g. Shell, Heap and Quicksort), and discuss the usage and relative advantages of various sorts.
- Describe merge and external sorts (e.g. Natural, Balanced, and Polyphase).
- Discuss and implement basic graph data structures and their traversals.
- Apply software engineering principles including structured programming and abstract data types.
|
|
|