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.

Dartmouth College
Skills you'll gain: C (Programming Language), Programming Principles, Embedded Systems, Program Development, Computer Engineering, Algorithms, Data Structures, Computer Programming, Debugging
Beginner · Course · 1 - 3 Months
University of Toronto
Skills you'll gain: Data Structures, Test Automation, Object Oriented Programming (OOP), Unit Testing, Python Programming, Program Development, Algorithms, Test Case, Software Testing, Debugging, Computational Thinking
Mixed · Course · 1 - 3 Months

University of Colorado System
Skills you'll gain: Unreal Engine, Object Oriented Programming (OOP), File I/O, C++ (Programming Language), Object Oriented Design, Debugging, Computer Programming, Event-Driven Programming, Video Game Development, Unity Engine, Data Structures, C# (Programming Language), Data Storage, 3D Assets, Development Environment, Game Design, Software Documentation, Software Design Patterns, User Interface (UI), Programming Principles
Intermediate · Specialization · 3 - 6 Months

Skills you'll gain: Threat Management, Microsoft Azure, Cloud Security, Data Security, Security Information and Event Management (SIEM), Data Structures, Microsoft Windows, Continuous Monitoring, Identity and Access Management, Query Languages
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Java Programming, Java, Integrated Development Environments, Mobile Development, Computer Programming, Programming Principles, Object Oriented Programming (OOP), Debugging, Data Structures
Beginner · Guided Project · Less Than 2 Hours

Johns Hopkins University
Skills you'll gain: R Programming, Statistical Programming, Statistical Analysis, Debugging, Data Analysis, Simulations, Programming Principles, Integrated Development Environments, Data Import/Export, Data Structures, Data Manipulation, Computer Programming, Performance Tuning, Software Installation
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Object Oriented Programming (OOP), Data Structures, Python Programming, Data Manipulation, Programming Principles, Computer Programming, Software Installation, Development Environment, Jupyter, Integrated Development Environments
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Kotlin, Object Oriented Programming (OOP), Programming Principles, Android Development, Data Structures, Computer Programming, Mobile Development, Integrated Development Environments, Debugging
Beginner · Course · 1 - 4 Weeks

Peking University
Skills you'll gain: Java Programming, Java, Maintainability, Software Design Patterns, Computer Programming, Object Oriented Programming (OOP), UI Components, JUnit, User Interface (UI), Application Development, Application Programming Interface (API), Software Development Tools, Web Applications, Database Application, Algorithms, Data Structures, Debugging, File I/O
Intermediate · Course · 1 - 3 Months

École Polytechnique Fédérale de Lausanne
Skills you'll gain: Scala Programming, Data Validation, Object Oriented Programming (OOP), Build Tools, Debugging, Programming Principles, Maintainability, Distributed Computing, Business Logic, Software Testing, Unit Testing, Data Structures, Data Modeling
Intermediate · Course · 1 - 3 Months
Skills you'll gain: File Systems, Operating Systems, OS Process Management, C (Programming Language), System Programming, Unix, Virtualization, Data Integrity, Debugging, File I/O, Linux, Performance Tuning, Distributed Computing, Data Storage, Command-Line Interface, Virtual Machines, Data Security, Computer Hardware, Scalability, Data Structures
Beginner · Specialization · 3 - 6 Months

University of California, Irvine
Skills you'll gain: Objective-C (Programming Language), iOS Development, Apple iOS, Apple Xcode, Prototyping, Mobile Development, C (Programming Language), Object Oriented Programming (OOP), Computer Programming, Data Structures
Mixed · Course · 1 - 4 Weeks