Theoretical computer science courses can help you learn algorithms, computational complexity, automata theory, and formal languages. You can build skills in problem-solving, mathematical reasoning, and algorithm analysis, that support tackling complex computational tasks. Many courses introduce tools like Python for algorithm implementation, LaTeX for typesetting mathematical documents, and software for simulating automata, allowing you to apply these concepts in practical scenarios.
University of Illinois Urbana-Champaign
Skills you'll gain: Computational Logic, Application Specific Integrated Circuits, Theoretical Computer Science, Data Structures, Verification And Validation, Computer Architecture, Systems Design, Algorithms, Computer Engineering, Mathematical Software, Design Software, Computer Programming Tools, Debugging, Digital Design, Software Development Tools
Intermediate · Course · 1 - 3 Months
Stanford University
Skills you'll gain: Algorithms, Graph Theory, Theoretical Computer Science, Computational Thinking, Data Structures, Pseudocode, Operations Research
Intermediate · Course · 1 - 4 Weeks
University of Michigan
Skills you'll gain: Programming Principles, Computer Programming, Python Programming, Computational Thinking, Software Installation, Development Environment
Beginner · Course · 1 - 3 Months

University of Washington
Skills you'll gain: Ruby (Programming Language), Other Programming Languages, Object Oriented Programming (OOP), Computer Programming, Programming Principles, Functional Design, Computational Thinking, Software Design Patterns, Theoretical Computer Science, Debugging
Mixed · Course · 1 - 3 Months

Skills you'll gain: Algorithms, Technical Communication, Pseudocode, Computational Thinking, Solution Design, Programming Principles, Software Design, Theoretical Computer Science, Data Structures, Mathematical Modeling, Applied Mathematics, Computer Science
Beginner · Course · 1 - 4 Weeks

University of Illinois Urbana-Champaign
Skills you'll gain: Data Structures, Data Storage, Algorithms, Data Storage Technologies, Database Systems, Database Theory, Theoretical Computer Science
Mixed · Course · 1 - 4 Weeks

Clemson University
Skills you'll gain: Graph Theory, Data Structures, Algorithms, Theoretical Computer Science, Computational Thinking, Computer Programming, Design Strategies, Mathematical Theory & Analysis, Probability
Build toward a degree
Intermediate · Course · 1 - 3 Months

University of California, Santa Cruz
Skills you'll gain: C++ (Programming Language), Go (Programming Language), Data Structures, C and C++, C (Programming Language), Object Oriented Programming (OOP), Programming Principles, Software Design Patterns, Debugging, Computer Programming, Object Oriented Design, Unit Testing, Integrated Development Environments, Algorithms, Pseudocode, Command-Line Interface, Graph Theory, Computer Science, File Systems, Artificial Intelligence
Intermediate · Specialization · 3 - 6 Months

Tsinghua University
Skills you'll gain: Data Structures, Algorithms, Programming Principles, Theoretical Computer Science, Computer Programming, Computer Science
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Object Oriented Programming (OOP), Programming Principles, Computer Programming, Scripting Languages, Data Import/Export, Data Structures, Python Programming, Scripting, Computational Logic, Computer Science, File Management
Beginner · Specialization · 3 - 6 Months

Skills you'll gain: Programming Principles, Computer Programming, Python Programming, Scripting, Computational Logic, Scripting Languages, Computer Science
Beginner · Course · 1 - 4 Weeks

Peking University
Skills you'll gain: Object Oriented Design, Unified Modeling Language, System Design and Implementation, Software Development, Software Engineering, Object Oriented Programming (OOP), Software Design, Software Design Patterns, Maintainability, Software Development Methodologies, Software Architecture, Systems Analysis, Requirements Analysis
Beginner · Course · 3 - 6 Months