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.

University of California, Davis
Skills you'll gain: Simulations, Social Sciences, Systems Thinking, Agentic systems, Computational Thinking, Social Impact, Sociology, Socioeconomics, Economics, Programming Principles, Scientific Methods
Beginner · Course · 1 - 4 Weeks

Northeastern University
Skills you'll gain: Algorithms, Graph Theory, Computational Thinking, Programming Principles, Theoretical Computer Science, Data Structures, Computer Programming, Performance Tuning, Network Routing, Design Strategies
Mixed · Course · 1 - 3 Months

Shanghai Jiao Tong University
Skills you'll gain: Combinatorics, Graph Theory, Theoretical Computer Science, Network Model, Mathematical Theory & Analysis, Advanced Mathematics, Network Analysis, Mathematics and Mathematical Modeling, Logical Reasoning, General Mathematics, Algorithms, Probability, Computer Science
Intermediate · Course · 1 - 3 Months

The Hong Kong University of Science and Technology
Skills you'll gain: Computational Logic, Logical Reasoning, Theoretical Computer Science, Deductive Reasoning, Mathematics and Mathematical Modeling, Computer Science, Algorithms
Beginner · Course · 1 - 3 Months

University of Colorado System
Skills you'll gain: Computational Thinking, File I/O, Data Collection, Simulations, Data Analysis, Microsoft Visual Studio, C (Programming Language), Analysis, C and C++, Statistical Analysis, Data Presentation, Automation, Program Development, Algorithms, Microsoft Development Tools, Programming Principles, Integrated Development Environments, Computer Programming, Theoretical Computer Science, Code Reusability
Beginner · Specialization · 3 - 6 Months

Skills you'll gain: Graph Theory, Network Analysis, Network Model, Social Network Analysis, Graphing, NoSQL, Data Science, Query Languages, Visualization (Computer Graphics), Applied Machine Learning, Data Transformation, Big Data, Machine Learning Methods, Python Programming, Spatial Data Analysis, Deep Learning, Machine Learning, Machine Learning Algorithms
Intermediate · Course · 3 - 6 Months

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

Hebrew University of Jerusalem
Skills you'll gain: Computer Science, Computer Systems, Computer Architecture, Computer Programming, Programming Principles, Memory Management, System Software, System Programming, Virtual Machines, Operating Systems, Hardware Architecture, Software Architecture, Algorithms, Software Design, Program Development, Object Oriented Programming (OOP), Data Structures, Computer Graphics, Peripheral Devices
Mixed · Course · 1 - 3 Months

Rice University
Skills you'll gain: Combinatorics, Probability, Programming Principles, Computational Thinking, Computer Programming, Object Oriented Programming (OOP), Development Testing, Software Testing, Applied Mathematics, Algorithms, Python Programming, Game Design, General Mathematics
Intermediate · Course · 1 - 3 Months

University of Colorado System
Skills you'll gain: Computational Thinking, C (Programming Language), Programming Principles, Computer Programming, Code Reusability, Data Storage
Beginner · Course · 1 - 4 Weeks
University of California, Irvine
Skills you'll gain: Blockchain, FinTech, Cryptography, Distributed Computing, Payment Systems, Transaction Processing, Cryptographic Protocols, Emerging Technologies, Digital Assets, Digital Transformation, Software Architecture, Data Integrity, Network Analysis
Beginner · Course · 1 - 4 Weeks

Stanford University
Skills you'll gain: Algorithms, Graph Theory, Data Structures, Theoretical Computer Science, Computational Thinking, Mathematical Theory & Analysis, Analysis, Probability & Statistics, Probability, Design Strategies, Logical Reasoning
Intermediate · Course · 1 - 4 Weeks