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 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), JUnit, Object Oriented Design, Computer Programming, Adaptability, Performance Tuning, Algorithms, Problem Solving
★ 4.7 (7.2K) · Intermediate · Specialization · 3 - 6 Months

University of Michigan
Skills you'll gain: C (Programming Language), Data Structures, Application Security, System Programming, Programming Principles, Performance Tuning
★ 4.5 (72) · Intermediate · Course · 1 - 4 Weeks

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
★ 4.8 (2.2K) · Intermediate · 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
★ 4.8 (1.2K) · Intermediate · Course · 1 - 3 Months

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

Tsinghua University
Skills you'll gain: Data Structures, Database Design, Query Languages, Algorithms, Computer Programming
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 Colorado Boulder
Skills you'll gain: Data Structures, Algorithms, Theoretical Computer Science, Programming Principles, Pseudocode, Computational Thinking, Data Science, Analysis, Big Data, Probability & Statistics, Python Programming
★ 4.7 (535) · Intermediate · Course · 1 - 4 Weeks

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
★ 4.7 (3K) · Intermediate · Course · 1 - 4 Weeks

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
★ 4.6 (3.2K) · Beginner · 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
★ 4.6 (263) · Advanced · Course · 1 - 4 Weeks

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