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.

Johns Hopkins University
Skills you'll gain: Object Oriented Programming (OOP), R Programming, Debugging, Functional Design, Programming Principles, Data Manipulation, Data Structures, Software Design Patterns, Performance Tuning, Performance Testing
Intermediate · Course · 1 - 3 Months

University of Michigan
Skills you'll gain: Debugging, Data Structures, Programming Principles, Integrated Development Environments, Python Programming, Computer Programming, Computer Graphics, Visualization (Computer Graphics)
Beginner · Course · 1 - 4 Weeks

Duke University
Skills you'll gain: Rust (Programming Language), Test Case, Software Testing, Data Structures, Debugging, GitHub, Programming Principles, Package and Software Management, Development Environment, System Programming, Software Documentation
Beginner · Course · 1 - 4 Weeks
University of Toronto
Skills you'll gain: Programming Principles, Debugging, File I/O, Software Documentation, Python Programming, Computer Programming, Program Development, Integrated Development Environments, Algorithms, Data Structures, Development Environment
Beginner · Course · 1 - 3 Months

Skills you'll gain: Unity Engine, Animation and Game Design, Video Game Development, Data Structures, Game Design, Computer Graphics, Trigonometry, Linear Algebra, Advanced Mathematics, Applied Mathematics, Algorithms, General Mathematics
Advanced · Course · 1 - 4 Weeks

Skills you'll gain: Debugging, Python Programming, Cybersecurity, Scripting, Programming Principles, IT Automation, Algorithms, Automation, Computer Programming, File Management, Data Structures
Beginner · Course · 1 - 4 Weeks

Johns Hopkins University
Skills you'll gain: Tidyverse (R Package), Web Scraping, Data Manipulation, R Programming, Data Transformation, Data Cleansing, Big Data, Statistical Programming, Text Mining, Data Import/Export, Data Analysis, Data Structures, Performance Tuning, Application Programming Interface (API)
Intermediate · Course · 1 - 3 Months
Multiple educators
Skills you'll gain: Unit Testing, Data Structures, Event-Driven Programming, File I/O, Interactive Data Visualization, Java, Java Programming, User Interface (UI), Object Oriented Programming (OOP), JUnit, Debugging, Object Oriented Design, Computer Programming, Cryptography, Software Engineering, Performance Tuning, Algorithms, Data Analysis, Software Design, Problem Solving
Beginner · Specialization · 3 - 6 Months

Princeton University
Skills you'll gain: Programming Principles, Computer Programming, Object Oriented Programming (OOP), Performance Tuning, Data Structures, Java Programming, Java, Program Development, File I/O, Computational Thinking, Computer Science, Algorithms, Animations, Debugging
Beginner · Course · 1 - 3 Months

Skills you'll gain: Full-Stack Web Development, Version Control, Django (Web Framework), Restful API, Data Structures, Unix Commands, Bootstrap (Front-End Framework), Git (Version Control System), API Testing, Back-End Web Development, GitHub, Relational Databases, Front-End Web Development, Object Oriented Programming (OOP), Database Management Systems, SQL, Database Design, Python Programming, Computer Programming, Cloud Hosting
Build toward a degree
Beginner · Professional Certificate · 3 - 6 Months

École Polytechnique Fédérale de Lausanne
Skills you'll gain: Scala Programming, Apache Spark, PySpark, Apache Hadoop, Big Data, User Interface (UI), Programming Principles, Performance Tuning, Data Processing, Software Design, Data Structures, Software Design Patterns, Data Manipulation, Functional Design, Object Oriented Programming (OOP), Heat Maps, Interactive Data Visualization, Distributed Computing, Computer Programming, Real Time Data
Intermediate · Specialization · 3 - 6 Months

Rice University
Skills you'll gain: Computational Thinking, Event-Driven Programming, Algorithms, Combinatorics, Graph Theory, Programming Principles, Application Development, Object Oriented Programming (OOP), Data Structures, Probability, Bioinformatics, Interactive Design, Program Development, Big Data, Python Programming, Data Analysis, User Interface (UI), Machine Learning Algorithms, Theoretical Computer Science, Computer Programming
Beginner · Specialization · 3 - 6 Months