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 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
University of London
Skills you'll gain: Arithmetic, Applied Mathematics, Computer Science, Computational Thinking, General Mathematics, Mathematical Theory & Analysis, Algebra, Cryptography, Systems Of Measurement
Beginner · Course · 1 - 4 Weeks

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 California, Davis
Skills you'll gain: Simulations, Social Sciences, Systems Thinking, Agentic systems, Social Network Analysis, Model Evaluation, Sociology, Economics, Scientific Methods, Computer Programming
Beginner · Course · 1 - 4 Weeks

Universitat Autònoma de Barcelona
Skills you'll gain: Computer Architecture, Systems Design, Application Specific Integrated Circuits, Digital Design, Hardware Architecture, Computer Hardware, Simulations, Verification And Validation
Intermediate · 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
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

University of Colorado Boulder
Skills you'll gain: Data Ethics, Computer Security Awareness Training, Ethical Standards And Conduct, Cybersecurity, Information Technology, Responsible AI, Information Privacy, Social Impact, Media and Communications, Personally Identifiable Information, Artificial Intelligence, Algorithms
Build toward a degree
Beginner · Course · 1 - 4 Weeks

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

Skills you'll gain: Data Structures, Graph Theory, Algorithms, Java, Java Programming, Theoretical Computer Science, Computer Programming, Computational Thinking, Programming Principles, Performance Tuning, Object-Relational Mapping, Computer Programming Tools
Intermediate · Specialization · 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: Systems Design, Computational Logic, Verification And Validation, Software Systems, Theoretical Computer Science, Simulations, Programming Principles, Graph Theory, Model Evaluation, Hardware Architecture, Algorithms, Logical Reasoning
Beginner · Course · 1 - 4 Weeks