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, Santa Cruz
Skills you'll gain: Go (Programming Language), Data Structures, Object Oriented Design, Object Oriented Programming (OOP), Computer Programming, Unit Testing, Programming Principles, Algorithms, C (Programming Language), Software Testing, Code Reusability, Graph Theory
Intermediate · Course · 1 - 3 Months

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

JetBrains
Skills you'll gain: Object Oriented Design, File I/O, Data Structures, Python Programming, Programming Principles, Code Reusability, Computer Programming, Scripting, Data Processing, Package and Software Management, Code Review, Computational Logic, NumPy, Development Environment, Integrated Development Environments, Computational Thinking, Software Installation, Numerical Analysis
Beginner · Course · 1 - 3 Months

University of Michigan
Skills you'll gain: Object Oriented Programming (OOP), Object Oriented Design, Animations, Interactive Data Visualization, Software Design, Program Development, Data Structures, Interactive Design, Programming Principles, Visualization (Computer Graphics), Graphic and Visual Design, Python Programming, Event-Driven Programming, Systems Design, Digital Design, Simulations, Computer Graphics, Design, Game Design, Computational Logic
Beginner · Specialization · 3 - 6 Months

Jordan University of Science and Technology
Skills you'll gain: Object Oriented Programming (OOP), Object Oriented Design, C# (Programming Language), Program Development, Software Engineering, C++ (Programming Language), Data Structures, Software Development, Computer Programming, Programming Principles, Java, Query Languages
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Swift Programming, Apple Xcode, iOS Development, Apple iOS, Data Structures, Programming Principles, Mobile Development, Code Reusability, Data Storage, Application Development, Object Oriented Programming (OOP), Development Environment, Computer Programming, Web Development
Beginner · Course · 1 - 3 Months
École Polytechnique Fédérale de Lausanne
Skills you'll gain: Scala Programming, Programming Principles, Data Structures, Functional Design, Object Oriented Programming (OOP), Other Programming Languages, Object Oriented Design, Computational Logic, Command-Line Interface
Intermediate · Course · 1 - 3 Months

Skills you'll gain: C and C++, C++ (Programming Language), Data Structures, Application Development, Program Development, Data Storage, Programming Principles, Computer Programming, Java Programming, Software Development, Computer Science
Beginner · Guided Project · Less Than 2 Hours

University of Michigan
Skills you'll gain: Data Structures, Python Programming, Computer Programming, Data Visualization, Computational Thinking, Debugging
Beginner · Course · 1 - 4 Weeks

Logical Operations
Skills you'll gain: Data Structures, Data Processing, Code Reusability, Virtual Machines, Verification And Validation, Program Development, Python Programming, Debugging, Maintainability, Data Manipulation, Programming Principles, Application Development, Scripting, Scripting Languages, Computer Programming, Software Installation, Development Environment, Software Development, Computer Programming Tools, Cross Platform Development
Beginner · Specialization · 1 - 3 Months

Skills you'll gain: Rust (Programming Language), Data Structures, Memory Management, Code Reusability, Package and Software Management, Blockchain, Web Development, Development Environment, Performance Testing, Programming Principles, System Programming, Algorithms, Integrated Development Environments, Software Testing, Software Installation
Beginner · Specialization · 3 - 6 Months

Universitat Politècnica de València
Skills you'll gain: Pandas (Python Package), Matplotlib, Seaborn, Plot (Graphics), Data Visualization, Data Literacy, Data Visualization Software, Time Series Analysis and Forecasting, Data Storytelling, Statistical Visualization, Statistical Analysis, Exploratory Data Analysis, Data Analysis, Data Manipulation, Graphing, Data Structures, Python Programming
Intermediate · Course · 1 - 4 Weeks