CSCI-C 310 Data Structures – Python
- Prerequisites: CSCI-A 205 or CSCI-A 202 or CSCI 24000 or INFO-B 211
The focus of this course is on solving computational problems that involve manipulating collections of data. We will study a core set of data abstractions, data structures, and algorithms that provide a foundation for writing efficient programs.
- Describe, explain, and use abstract data types, including stacks, queues, lists, sets, and maps.
- Implement those data types using both contiguous and linked representations. (Contiguous representation mechanisms include arrays and hash tables. Linked representation mechanisms include singly and doubly linked lists and trees.)
- Implement various algorithms for searching and sorting, including linear search, binary search, insertion sort, selection sort, merge sort, quicksort, and heap sort.
- Read and write recursive algorithms.
- Know when recursion is and is not appropriate.
- Describe an algorithm’s asymptotic performance and its practical implications.
There is not a syllabus available for this course.