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.

École Polytechnique Fédérale de Lausanne
Skills you'll gain: Scala Programming, Data Structures, Distributed Computing, Algorithms, Performance Tuning, Functional Design, Performance Testing, Computer Programming
Intermediate · Course · 1 - 4 Weeks
University of California, Irvine
Skills you'll gain: Blockchain, Cryptography, Encryption, Transaction Processing, Authentications, FinTech, Data Security, Emerging Technologies, Data Integrity, Distributed Computing
Beginner · Course · 1 - 4 Weeks

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

Duke University
Skills you'll gain: Programming Principles, Algorithms, C (Programming Language), Computer Programming, Problem Solving
Beginner · Course · 1 - 4 Weeks

National Taiwan University
Skills you'll gain: Supervised Learning, Machine Learning, Machine Learning Algorithms, Data Validation, Classification And Regression Tree (CART), Algorithms, Regression Analysis, Predictive Modeling, Feature Engineering, Artificial Intelligence, Data Ethics, Statistical Methods, Data Transformation
Intermediate · Course · 1 - 3 Months

University of Colorado System
Skills you'll gain: Computational Thinking, Data Analysis, Analysis, C (Programming Language), Programming Principles, Data Structures, Descriptive Statistics, Data Visualization Software
Beginner · 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

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

Skills you'll gain: Python Programming
Beginner · 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
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

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