Data Structures and Algorithms I

Undergraduate course, University of West Florida, Department of Computer Science, 2020

A first course in Data Structures and Algorithms. Topics will include traditional data structures with a major focus on design and analysis of algorithms and will include projects that stress mathematics and science.

Learning Objectives

  1. Develop solutions to problems by applying presented algorithms.
  2. Develop solutions that emphasize mathematical and scientific domains.
  3. Write algorithms in pseudo code for solving problems prior to coding in C++.
  4. Analyze solutions in terms of time and space complexity.
  5. Develop programs that utilize the static data structures, 1-D, 2-D arrays and structs.
  6. Write recursive definitions and develop recursive programming solutions.
  7. Develop programs that require dynamic data structures such as singly- and doubly-linked lists.
  8. Contrast stacks and queues in both use and implementation.
  9. Compare sorting algorithms in terms of time and space complexity and implementation.
  10. Explain the run-time stack in terms of function calling sequence, parameter passing and return values.
  11. Analyze and implement search techniques.
  12. Use modern programming environments and debuggers for coding.