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.

Rice University
Skills you'll gain: Apache Kafka, Apache Spark, Apache Hadoop, Event-Driven Programming, Distributed Computing, Java Programming, Dataflow, Java, OS Process Management, Scala Programming, Data Structures, Programming Principles, Servers, Application Frameworks, Computer Programming, Algorithms, Performance Tuning, Computer Science, Functional Design, Scalability
Intermediate · Specialization · 3 - 6 Months

University of Colorado System
Skills you'll gain: Unreal Engine, C++ (Programming Language), C and C++, Data Structures, Video Game Development, Data Storage, Game Design, Computer Programming, Programming Principles, Computational Logic, Algorithms
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Javascript, Data Structures, Dataflow, Computer Programming
Advanced · Guided Project · Less Than 2 Hours

Skills you'll gain: Data Structures, Development Environment, Program Development, C++ (Programming Language), Debugging, Programming Principles, Computer Programming Tools, Integrated Development Environments, Computer Programming, Data Management, Computational Logic
Beginner · Course · 1 - 4 Weeks
University of California, Irvine
Skills you'll gain: Blockchain, Cryptography, Data Integrity, Encryption, Cryptographic Protocols, FinTech, Transaction Processing, Data Structures, Verification And Validation
Beginner · Course · 1 - 4 Weeks

University of Colorado Boulder
Skills you'll gain: Robotics, Graph Theory, Algorithms, Data Structures, Python Programming
Build toward a degree
Intermediate · Course · 1 - 3 Months

University of Pennsylvania
Skills you'll gain: Object Oriented Design, Java, Object Oriented Programming (OOP), Unit Testing, Java Programming, Application Development, Data Structures, Application Design, Software Testing, Program Development, Development Testing, Programming Principles, Systems Development, Test Driven Development (TDD), Computer Programming, Other Programming Languages
Beginner · Course · 1 - 4 Weeks

University of California, Santa Cruz
Skills you'll gain: C++ (Programming Language), Go (Programming Language), File I/O, Data Structures, Object Oriented Programming (OOP), Object Oriented Design, Software Design Patterns, Debugging, Computer Programming, Programming Principles, Unit Testing, Algorithms, C (Programming Language), Program Development, Software Design, Graph Theory, Software Testing, Code Reusability, Memory Management, C and C++
Intermediate · Specialization · 3 - 6 Months

Skills you'll gain: Rust (Programming Language), Data Structures, Code Reusability, Memory Management, Package and Software Management, Algorithms, Software Testing
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Selenium (Software), JUnit, HTML and CSS, Test Automation, Hypertext Markup Language (HTML), Software Testing, Web Design and Development, Test Script Development, Test Tools, Web Development, Unit Testing, Software Quality Assurance, Java, Data Structures, Java Programming, Cascading Style Sheets (CSS), Test Execution Engine, Code Reusability, Debugging, Software Design Patterns
Intermediate · Course · 1 - 3 Months
Stanford University
Skills you'll gain: Algorithms, Graph Theory, Theoretical Computer Science, Network Routing, Computational Thinking, Data Structures, Computer Science
Intermediate · Course · 1 - 4 Weeks

Logical Operations
Skills you'll gain: Code Reusability, R Programming, Package and Software Management, Computer Programming, Data Structures, Software Development, Data Science, Computer Programming Tools, Data Analysis
Mixed · Course · 1 - 4 Weeks