Data Structures & Algorithms

(DSC 395T)

Request Info

In this course, students will develop their programming skills while learning the fundamentals of data structures and algorithms. Students will hone their programming skills by completing non-trivial programming assignments in Python, and they will be introduced to important programming methodologies and skills, including testing and debugging. Students will learn a variety of data structures, from the basics, such as stacks, queues, and hash tables, to more sophisticated data structures such as balanced trees and graphs. In terms of algorithms, the focus will be on the practical use and analysis of algorithms rather than on proof techniques.

For those who matriculated in Spring 2021 and Fall 2021, Algorithms or Data Structures may be taken to fulfill the Foundational requirements.


  • Programming Skills: Testing
  • Programming Skills: Debugging
  • Programming Skills: Programming Methodology
  • Data Structures: Stacks, Queues
  • Data Structures: Linked lists
  • Data Structures: Hash Tables
  • Data Structures: Trees
  • Data Structures: Balanced Trees
  • Data Structures: Binary Heaps
  • Data Structures: Graphs
  • Algorithms: Algorithm Analysis
  • Algorithms: Searching and Sorting
  • Algorithms: Divide and Conquer Algorithms
  • Algorithms: Greedy Algorithms
  • Algorithms: Dynamic Programming

Course Availability

  • Spring 2023

Meet Your Instructor


    Calvin Lin


    Meet Dr. Lin

Take the Next Step

Advance your career with UT Austin's Master of Data Science Online.