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 Michigan
Skills you'll gain: File I/O, Data Structures, Data Processing, Data Analysis, Data Dictionary, Python Programming, Data Manipulation, Software Installation, Data Store, File Management, Development Environment, Computer Programming Tools
Beginner · Course · 1 - 3 Months

Tsinghua University
Skills you'll gain: Data Structures, Algorithms, Graph Theory, Computational Thinking, Database Management Systems, System Design and Implementation, Programming Principles, Computer Programming, Theoretical Computer Science, Data Storage, Computer Science, Memory Management
Intermediate · Specialization · 3 - 6 Months

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: Algorithms, Graph Theory, Data Structures, C++ (Programming Language), C and C++, Programming Principles, Computer Programming, Object Oriented Programming (OOP), Theoretical Computer Science
Intermediate · Specialization · 1 - 3 Months

Skills you'll gain: Graph Theory, Data Structures, Algorithms, Computer Programming, Python Programming, Computational Thinking, Data Science, Theoretical Computer Science, Data Processing, Geometry, Data Analysis Expressions (DAX), Data Manipulation, Performance Tuning, Data Analysis, Data Management, Applied Mathematics
Intermediate · Specialization · 3 - 6 Months

Skills you'll gain: Data Storage
Intermediate · Course · 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, Problem Solving, Solution Design, Applied Mathematics, Geometry
Intermediate · Specialization · 3 - 6 Months

Princeton University
Skills you'll gain: Graph Theory, Data Structures, Algorithms, Theoretical Computer Science, Operations Research, Computer Programming, Java Programming, Java
Intermediate · Course · 3 - 6 Months

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

University of California San Diego
Skills you'll gain: Unit Testing, Growth Mindedness, Data Structures, Graph Theory, Event-Driven Programming, Social Network Analysis, Interactive Data Visualization, Java, Java Programming, Network Analysis, Object Oriented Programming (OOP), Technical Communication, User Interface (UI), Peer Review, Object Oriented Design, Software Testing, Computer Programming, Program Development, Algorithms, Problem Solving
Intermediate · Specialization · 3 - 6 Months

Skills you'll gain: Graph Theory, Data Structures, Algorithms, Computer Programming, Computational Thinking, Theoretical Computer Science, Python Programming, Performance Tuning
Intermediate · 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, Integrated Development Environments, Debugging, Program Development
Intermediate · Course · 1 - 4 Weeks