Algorithm design courses can help you learn sorting algorithms, graph theory, dynamic programming, and complexity analysis. You can build skills in problem-solving, optimizing code efficiency, and understanding data structures like trees and hash tables. Many courses introduce tools such as Python, Java, or C++, along with frameworks for implementing algorithms, that support tasks in artificial intelligence, data analysis, and software development.

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

Skills you'll gain: Data Structures, Graph Theory, Algorithms, Java, Java Programming, Data Management, Secure Coding, Theoretical Computer Science, Programming Principles, Other Programming Languages, Performance Tuning
★ 3.6 (13) · Intermediate · Specialization · 1 - 3 Months
University of Illinois Urbana-Champaign
Skills you'll gain: Computational Logic, Application Specific Integrated Circuits, Theoretical Computer Science, Data Structures, Verification And Validation, Systems Design, Algorithms, Programming Principles, Design Software, Model Optimization, Digital Design
★ 4.6 (557) · Intermediate · Course · 1 - 3 Months

Skills you'll gain: Data Structures, Algorithms, Graph Theory, Programming Principles, Theoretical Computer Science, Computer Science, Computer Programming, Python Programming, Pandas (Python Package), Machine Learning Algorithms, Computational Thinking, C++ (Programming Language), Data Architecture, Random Forest Algorithm, Performance Tuning, Object Oriented Programming (OOP), Network Analysis, Program Development, Problem Solving, Debugging
★ 4.5 (38) · Intermediate · Specialization · 3 - 6 Months

Skills you'll gain: Data Structures, Algorithms, Python Programming, Computer Programming, Geometry, Data Manipulation, Data Management, Data Analysis, Applied Mathematics
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Graph Theory, Algorithms, Game Theory, Data Structures, Computer Programming, Computational Thinking, Problem Solving
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Graph Theory, Data Structures, Algorithms, Computer Programming, Computational Thinking, Theoretical Computer Science, Python Programming, Performance Tuning
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Data Structures, Algorithms, Java, Java Programming, Programming Principles, Computer Programming, Performance Tuning, Computational Thinking, Theoretical Computer Science, Solution Design
Beginner · Course · 1 - 3 Months

Skills you'll gain: Data Structures, Object Oriented Programming (OOP), Java Programming, Object Oriented Design, Computational Thinking, Algorithms, Debugging, Java, Applied Mathematics, Programming Principles, Computer Programming, Theoretical Computer Science, Numerical Analysis, File I/O, Program Development, Mathematical Theory & Analysis, Pseudocode, Software Installation, Software Architecture, Integrated Development Environments
Intermediate · Specialization · 3 - 6 Months

Skills you'll gain: Algorithms, Graph Theory, Data Structures, C++ (Programming Language), C and C++, Programming Principles, Computer Programming, Object Oriented Programming (OOP), Theoretical Computer Science
★ 4.6 (16) · Intermediate · Specialization · 1 - 3 Months

Skills you'll gain: Performance Testing, Performance Tuning, Performance Stress Testing, Model Optimization, Algorithms, Performance Analysis, Performance Metric, Memory Management, Theoretical Computer Science
Intermediate · Course · 1 - 4 Weeks

Tsinghua University
Skills you'll gain: Data Structures, Algorithms, Graph Theory, Computational Thinking, Theoretical Computer Science, System Design and Implementation, Computer Programming, Data Storage
★ 2.9 (40) · Intermediate · Specialization · 3 - 6 Months