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.

Skills you'll gain: Graph Theory, Data Structures, Algorithms, Program Development, Programming Principles, Computational Thinking, Theoretical Computer Science, Computer Science, Python Programming
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Algorithms, Computer Hardware, Cryptography, Python Programming, Computer Programming, Emerging Technologies, Theoretical Computer Science, Simulation and Simulation Software, Linear Algebra
Beginner · Course · 1 - 3 Months

École Polytechnique Fédérale de Lausanne
Skills you'll gain: Scala Programming, Data Structures, Distributed Computing, Algorithms, Functional Design, Java Programming, Other Programming Languages, Performance Tuning
Intermediate · Course · 1 - 4 Weeks

Rice University
Skills you'll gain: Graph Theory, Algorithms, Computational Thinking, Data Analysis, Data Structures, Theoretical Computer Science, Network Analysis, Analysis, Programming Principles, Python Programming
Intermediate · Course · 1 - 4 Weeks

University of Colorado System
Skills you'll gain: Computational Thinking, Data Collection, Microsoft Visual Studio, Program Development, C (Programming Language), Programming Principles, Algorithms, Data Storage, Computer Programming
Beginner · Course · 1 - 4 Weeks

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

University of Colorado System
Skills you'll gain: File I/O, Simulations, C (Programming Language), Computational Thinking, Automation, Algorithms, Data Structures, Theoretical Computer Science, Programming Principles, Debugging
Beginner · Course · 1 - 4 Weeks

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

International Institute of Information Technology, Hyderabad
Skills you'll gain: Microarchitecture, Computer Architecture, Hardware Architecture, Systems Architecture, Computer Systems, Computer Hardware, Performance Tuning
Intermediate · Course · 1 - 4 Weeks

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

Birla Institute of Technology & Science, Pilani
Skills you'll gain: Computational Logic, Logical Reasoning, Deductive Reasoning, Theoretical Computer Science, Analytical Skills, Programming Principles, Computer Science, Data Analysis, Computer Programming, Algorithms, Verification And Validation, Systems Analysis, Software Development, Machine Learning
Beginner · Course · 1 - 3 Months

University of Illinois Urbana-Champaign
Skills you'll gain: Distributed Computing, File Systems, Cloud Computing, Operating Systems, Transaction Processing, Network Security, Data Centers, Authorization (Computing), Apache Hadoop, Data Store, Authentications, Cryptography, NoSQL, Algorithms
Mixed · Course · 1 - 3 Months