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.

Tsinghua University
Skills you'll gain: Data Structures, Algorithms, Computer Programming
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Graph Theory, Javascript, Theoretical Computer Science, Programming Principles, Computational Thinking, Computer Science
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Data Structures, Object Oriented Programming (OOP), Java Programming, Object Oriented Design, Computational Thinking, Algorithms, Debugging, Java, Applied Mathematics, Programming Principles, Computer Programming, Theoretical Computer Science, Numerical Analysis, Computer Programming Tools, Mathematical Theory & Analysis, Pseudocode, Software Installation, Software Architecture, Performance Tuning, Other Programming Languages
Intermediate · Specialization · 3 - 6 Months

Skills you'll gain: Software Design Patterns, Computational Thinking, Software Design, Algorithms, Theoretical Computer Science, Software Development, Data Structures, Computer Programming, Problem Solving, Computer Science, Machine Learning Methods
Advanced · Course · 1 - 4 Weeks

Tsinghua University
Skills you'll gain: Data Structures, Database Management Systems, System Design and Implementation, Programming Principles, Algorithms
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Computational Thinking, Algorithms, Program Development, Theoretical Computer Science, Software Development, Software Engineering, Programming Principles, Data Structures, Computer Programming, Javascript, Computer Science, Web Development
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Graph Theory, Computational Thinking, Data Structures, Algorithms, Problem Solving, Programming Principles, Computer Programming, Theoretical Computer Science, Javascript, Solution Design, Performance Tuning, Memory Management
Intermediate · Specialization · 3 - 6 Months

Princeton University
Skills you'll gain: Graph Theory, Data Structures, Algorithms, Theoretical Computer Science, Computer Programming, Java Programming, Java
Intermediate · Course · 3 - 6 Months
University of Michigan
Skills you'll gain: File I/O, Data Structures, Data Processing, Data Analysis, Python Programming, Data Manipulation, Software Installation, File Management, Development Environment
Beginner · Course · 1 - 3 Months

Princeton University
Skills you'll gain: Theoretical Computer Science, Data Structures, Computer Science, Computer Architecture, Computer Systems, Algorithms, Computer Programming, Computational Logic, Java Programming, Computer Hardware, Scalability
Intermediate · Course · 1 - 3 Months

University of Illinois Urbana-Champaign
Skills you'll gain: C++ (Programming Language), Data Structures, Object Oriented Programming (OOP), Object Oriented Design, Graph Theory, Development Environment, Data Storage, Engineering Software, Unstructured Data, Computer Programming, Software Engineering, Algorithms, Memory Management, Computer Programming Tools, Debugging, Program Development, Database Systems, Theoretical Computer Science
Intermediate · Specialization · 1 - 3 Months

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