Prerequisite(s): CSIT 114 with a grade of C- or higher. This course will teach the creation and manipulation of in-memory data structures including lists, queues, trees, stacks, heaps, hash tables, graphs, search trees, etc. It will cover searching, sorting, and other algorithms for in-memory data structures. Data structures related to external data storage and retrieval will also be covered. It will also cover the design, implementation, and analysis of algorithms. The programming language to be used is Python.