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.

Birla Institute of Technology & Science, Pilani
Skills you'll gain: Microarchitecture, Computer Architecture, Computer Systems, Computer Engineering, Programming Principles, Computational Logic, Systems Architecture, Computer Hardware, Embedded Systems, Algorithms
Beginner · Course · 1 - 3 Months

University of Colorado Boulder
Skills you'll gain: Mathematical Modeling, Software Systems, Mechanical Engineering, Systems Analysis, Systems Engineering, Applied Mathematics, Differential Equations, Hardware Architecture, Verification And Validation, Linear Algebra
Build toward a degree
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Algorithms, Computer Hardware, Cryptography, Python Programming, Computer Programming, Computational Thinking, Emerging Technologies, Technical Documentation, Theoretical Computer Science, Linear Algebra, Simulations
Beginner · Course · 1 - 3 Months

University of Colorado Boulder
Skills you'll gain: Algorithms, Data Structures, Theoretical Computer Science, Computer Programming, Computational Thinking, Computer Science, Programming Principles, Python Programming, Advanced Mathematics, Design Strategies, Mathematical Theory & Analysis, Data Analysis, Analysis
Build toward a degree
Advanced · Course · 1 - 4 Weeks
Rice University
Skills you'll gain: Theoretical Computer Science, Computer Science, Computer Programming, Computational Thinking, Programming Principles, Debugging, Algorithms, Python Programming
Intermediate · Course · 1 - 4 Weeks

Rice University
Skills you'll gain: Computational Thinking, Algorithms, Bioinformatics, Data Structures, Big Data, Python Programming, Data Analysis, Machine Learning Algorithms, Unsupervised Learning, Analysis
Intermediate · Course · 1 - 4 Weeks

University of Colorado System
Skills you'll gain: Computational Thinking, C (Programming Language), Data Structures, Programming Principles, Computer Programming, Data Store, Problem Management, Program Development, Debugging
Beginner · Course · 1 - 4 Weeks

University of Colorado Boulder
Skills you'll gain: Public Key Cryptography Standards (PKCS), Cryptography, Data Structures, Algorithms, Encryption, Theoretical Computer Science, Computer Science, Computational Thinking, Data Storage Technologies, Linear Algebra, Python Programming, Arithmetic
Build toward a degree
Advanced · Course · 1 - 4 Weeks

University of California San Diego
Skills you'll gain: Algorithms, Program Development, Debugging, Development Testing, Software Testing, Computational Thinking, Computer Programming, Programming Principles, Data Structures, Theoretical Computer Science, Bioinformatics
Intermediate · Course · 1 - 3 Months

École Polytechnique Fédérale de Lausanne
Skills you'll gain: Scala Programming, Data Structures, Distributed Computing, Algorithms, Functional Design, Other Programming Languages, Java, Performance Tuning
Intermediate · Course · 1 - 4 Weeks
University of Toronto
Skills you'll gain: Programming Principles, Debugging, Software Documentation, Python Programming, Computer Programming, Program Development, Integrated Development Environments, Data Structures, File Management
Beginner · Course · 1 - 3 Months

Rice University
Skills you'll gain: Computational Thinking, Programming Principles, Algorithms, Data Structures, Theoretical Computer Science, Computer Programming, Python Programming, Computer Science, Game Theory, Mathematical Modeling, Software Testing
Intermediate · Course · 1 - 4 Weeks