Courses in Theory of Computation often teach formal languages, automata theory, computability, and complexity classes. You can build skills in algorithm design, problem-solving, and understanding the limits of computation. Many courses introduce tools like Turing machines and state diagrams, which help illustrate concepts and analyze computational problems. You'll also explore key topics such as P vs NP, decidability, and the role of algorithms in artificial intelligence, enhancing your ability to tackle complex computational challenges.

Princeton University
Skills you'll gain: Graph Theory, Data Structures, Algorithms, Theoretical Computer Science, Operations Research, Computational Thinking, Computer Programming, Network Routing, Java Programming, Linear Algebra
Intermediate · Course · 3 - 6 Months

University of California, Davis
Skills you'll gain: Social Network Analysis, Network Analysis, Data Wrangling, Natural Language Processing, Web Scraping, Social Sciences, Data Ethics, Databases, Artificial Intelligence, Research, Simulations, Data Processing, Big Data, Systems Thinking, Social Studies, Trend Analysis, Data Science, AI Enablement, Research Methodologies, Agentic systems
Beginner · Specialization · 3 - 6 Months

University of Illinois Urbana-Champaign
Skills you'll gain: C++ (Programming Language), Data Structures, Object Oriented Programming (OOP), Object Oriented Design, Graph Theory, Development Environment, Data Storage, Engineering Software, Unstructured Data, Computer Programming, Algorithms, Data Storage Technologies, Debugging, Program Development, Database Systems, Database Theory, Network Routing, Theoretical Computer Science
Intermediate · Specialization · 1 - 3 Months
University of Washington
Skills you'll gain: Supervised Learning, Network Model, Matlab, Machine Learning Algorithms, Artificial Neural Networks, Neurology, Computer Science, Reinforcement Learning, Computational Thinking, Bioinformatics, Mathematical Modeling, Physiology, Recurrent Neural Networks (RNNs), Biology, Linear Algebra, Statistical Methods, Information Architecture, Differential Equations, Probability Distribution
Beginner · Course · 1 - 3 Months

Princeton University
Skills you'll gain: Programming Principles, Computer Programming, Object Oriented Programming (OOP), Performance Tuning, Data Structures, Java Programming, Java, Program Development, File I/O, Computational Thinking, Computer Science, Algorithms, Animations, Debugging
Beginner · Course · 1 - 3 Months

Tsinghua University
Skills you'll gain: Data Structures, Algorithms, Graph Theory, Computational Thinking, Programming Principles, Database Design, Pseudocode, Query Languages, Computer Programming, Theoretical Computer Science, Computer Science, Data Storage
Intermediate · Specialization · 3 - 6 Months

University of Colorado Boulder
Skills you'll gain: Computational Logic, Verification And Validation, Theoretical Computer Science, Systems Design, Model Evaluation, Simulations, Algorithms, Safety and Security
Beginner · Course · 1 - 4 Weeks

Hebrew University of Jerusalem
Skills you'll gain: Computer Science, Computer Engineering, Computer Architecture, Computer Programming, System Programming, Virtual Machines, Operating Systems, Software Architecture, Algorithms, Software Design, Program Development, Object Oriented Programming (OOP), Data Structures, Computer Graphic Techniques
Mixed · Course · 1 - 3 Months

University of California San Diego
Skills you'll gain: Graph Theory, Combinatorics, Network Analysis, Data Structures, Visualization (Computer Graphics), Algorithms, Mathematical Theory & Analysis, Theoretical Computer Science, Program Development
Beginner · Course · 1 - 3 Months

University of California San Diego
Skills you'll gain: Cryptography, Encryption, Public Key Cryptography Standards (PKCS), Cybersecurity, Arithmetic, Algorithms, Theoretical Computer Science, Computational Thinking, Algebra, Python Programming
Beginner · Course · 1 - 4 Weeks

University of Michigan
Skills you'll gain: Computational Thinking, Programming Principles, Problem Solving, Computer Science, Disaster Recovery, Algorithms, Computer Programming, Public Health
Beginner · Course · 1 - 3 Months
Stanford University
Skills you'll gain: Cryptography, Data Encryption Standard, Encryption, Key Management, Advanced Encryption Standard (AES), Public Key Cryptography Standards (PKCS), Cybersecurity, Authentications, Data Integrity, Secure Coding, Algorithms, Computational Thinking
Mixed · Course · 1 - 3 Months