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.

Skills you'll gain: Data Structures, Graph Theory, Algorithms, Java, Java Programming, Data Management, Secure Coding, Theoretical Computer Science, Programming Principles, Other Programming Languages, Performance Tuning, Computer Programming
Intermediate · Specialization · 1 - 3 Months

Skills you'll gain: Data Structures, Graph Theory, Algorithms, Game Theory, Java, Java Programming, Programming Principles, Performance Tuning, Computational Thinking, Theoretical Computer Science, Computer Programming, Software Design Patterns, Problem Solving, Solution Design, Applied Mathematics, Geometry
Intermediate · Specialization · 3 - 6 Months

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

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

University of Michigan
Skills you'll gain: Memory Management, C (Programming Language), C and C++, Data Structures, Secure Coding, Application Security, System Programming, Programming Principles
Intermediate · Course · 1 - 4 Weeks

Birla Institute of Technology & Science, Pilani
Skills you'll gain: Computer Science, Computer Programming, Solution Design, Problem Solving, Mathematical Theory & Analysis
Build toward a degree
Beginner · Course · 1 - 3 Months

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, Software Engineering, Data Structures, Memory Management, Computer Programming Tools, Debugging, Program Development
Intermediate · Course · 1 - 4 Weeks

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

University of London
Skills you'll gain: Pseudocode, Algorithms, Computer Science, Data Structures, Diagram Design
Beginner · Course · 1 - 4 Weeks

University of London
Skills you'll gain: Algorithms, Computational Thinking, Theoretical Computer Science, Computational Logic, Critical Thinking and Problem Solving, Computer Science, Data Structures, Critical Thinking, Classification Algorithms, Logical Reasoning, Graph Theory, Mathematical Theory & Analysis, Complex Problem Solving, Analysis, Game Theory
Intermediate · Course · 1 - 4 Weeks

Duke University
Skills you'll gain: File I/O, Object Oriented Design, Java Programming, Object Oriented Programming (OOP), Data Structures, Java, Cryptography, Software Engineering, Computer Programming, Algorithms, Encryption, Data Store, Program Development, Web Analytics and SEO, Data Import/Export, Web Servers, File Management
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, Code Reusability, Object Oriented Programming (OOP), Network Routing, Application Design, Application Development
Intermediate · Course · 1 - 3 Months