CTCITC 113: Data Structures

Article Header


Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum

CTCITC 113: Data Structures

Required prerequisite: CTCITC 112: Programming II, or equivalent

By the end of this course, students should be able to:

  • Write code to handle file and stream I/O with appropriate exception handling
  • Write code to construct, populate, and use sequential data structures, including lists, stacks, and queues.
  • Differentiate between array-based and linked list-based implementations of sequential data structures.
  • Analyze the runtime performance of algorithms (contained in code segments and data structure operations) using big O notation
  • Implement recursive and non-recursive algorithms to manipulate (construct, insert, delete, search, and traverse) binary search trees.
  • Demonstrate the process of rebalancing a binary search tree (not necessary to implement in code).
  • Identify techniques to resolve hash table collisions. Implement recursive and non-recursive algorithms to manipulate (construct, insert, delete, search, and traverse) heaps.
  • Trace the steps of common sorting algorithms such as quicksort, mergesort, and heapsort.
  • Compare and contrast sorting algorithms with respect to their runtime performance.
  • Analyze a scenario, select/design the appropriate data structure(s) to apply, and implement an efficient solution to solve the problem.

Note: To transfer this course for credit to a four-year Washington State college or university a final grade of a 2.5 (B) is required