Data Structures and Algorithms courses can help you learn about arrays, linked lists, trees, and graph structures, along with sorting and searching algorithms. You can build skills in problem-solving, optimizing code efficiency, and analyzing algorithm complexity. Many courses introduce tools like Python, Java, or C++ for implementing these concepts, as well as platforms for coding challenges that reinforce your understanding through practical application.

University of Illinois Urbana-Champaign
Skills you'll gain: C++ (Programming Language), Object Oriented Programming (OOP), Object Oriented Design, Development Environment, Engineering Software, Computer Programming, Data Structures, Debugging, Program Development
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Data Wrangling, Data Import/Export
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Graph Theory, Javascript, Program Development, Programming Principles, Software Design Patterns, Computational Thinking, Debugging, Development Environment, Computer Science, Performance Tuning
Intermediate · Course · 1 - 3 Months

University of California San Diego
Skills you'll gain: Unit Testing, Data Structures, Java, JUnit, Performance Tuning, Debugging, Algorithms, Object Oriented Programming (OOP), Theoretical Computer Science, Unstructured Data
Intermediate · Course · 1 - 3 Months

University of Colorado Boulder
Skills you'll gain: Data Structures, Algorithms, Theoretical Computer Science, Programming Principles, Pseudocode, Computational Thinking, Analysis, Python Programming
Build toward a degree
Intermediate · Course · 1 - 4 Weeks

Princeton University
Skills you'll gain: Combinatorics, Algorithms, Theoretical Computer Science, Mathematical Theory & Analysis, Graph Theory, Data Structures, Advanced Mathematics, Mathematical Modeling, Probability
Advanced · Course · 1 - 3 Months

Skills you'll gain: Graph Theory, Data Structures, Algorithms, Program Development, Programming Principles, Computational Thinking, Theoretical Computer Science, Computer Science, Python Programming
Intermediate · Course · 1 - 3 Months

University of California San Diego
Skills you'll gain: Logical Reasoning, Computational Logic, Deductive Reasoning, Computational Thinking, Theoretical Computer Science, Combinatorics, Algorithms, Python Programming, Computer Science, Program Development
Beginner · Course · 1 - 3 Months

University of California San Diego
Skills you'll gain: Graph Theory, Data Structures, Java Programming, Java, Object Oriented Design, Software Design, Algorithms, Theoretical Computer Science, Maintainability, Object Oriented Programming (OOP), Network Routing, Computational Thinking, Application Development
Intermediate · Course · 1 - 3 Months

Duke University
Skills you'll gain: File I/O, Java Programming, Object Oriented Programming (OOP), Data Structures, Java, Cryptography, Software Engineering, Computer Programming, Algorithms, Encryption, Web Servers
Beginner · Course · 1 - 3 Months

University of California San Diego
Skills you'll gain: Graph Theory, Algorithms, Network Routing, Programming Principles, Social Network Analysis, Data Structures, Network Analysis, Network Model
Intermediate · Course · 1 - 3 Months

University of Colorado Boulder
Skills you'll gain: Theoretical Computer Science, Algorithms, Computational Thinking, Pseudocode, Data Structures, Design Strategies, Programming Principles, Computer Science, Advanced Mathematics, Python Programming, Analysis
Build toward a degree
Advanced · Course · 1 - 4 Weeks