Stanford University

Explore the limits of computer power, learn about computability theory, and gain a strong foundation in discrete mathematics with CS103 at Stanford University.

University CoursesAlgorithm

CS103 is a first course in discrete math, computability theory, and complexity theory. In this course, we'll probe the limits of computer power, explore why some problems are harder to solve than others, and see how to reason with mathematical certainty.

- Explore the limits of computer power and the complexity of problems
- Learn about computability theory and how to reason with mathematical certainty
- Gain a strong foundation in discrete mathematics

This course is recommended for students interested in computer science, mathematics, and the theoretical foundations of computing. It provides a solid grounding in the mathematical concepts that underlie computer science and is a valuable prerequisite for more advanced courses in the field.

Learn by Doing from Your Browser Sidebar

Simply install the browser extension and click to launch GetVM directly from your sidebar.

Choose your OS, IDE, or app from our playground library and launch it instantly.

Practice within the VM while following tutorials or videos side-by-side. Save your work with Pro for easy continuity.

Technical TutorialsAlgorithm

Comprehensive guide to genetic programming, covering evolutionary algorithms, computational biology, and advanced programming techniques. Valuable resource for computer scientists, biologists, and researchers.

Technical TutorialsAlgorithmData Structures

Comprehensive guide to the fundamental concepts and techniques in the field of algorithms, covering discrete mathematics, data structures, and algorithm analysis.

Technical TutorialsAlgorithmData Structures

Explore algorithms, data structures, and their practical applications in graphics and geometry. Suitable for beginners and experienced learners.

Technical TutorialsAlgorithmData Structures

Comprehensive guide to data structures and algorithms, covering arrays, linked lists, stacks, queues, trees, and more. Ideal for students, developers, and professionals seeking to build efficient software systems.

Technical TutorialsAlgorithmData StructuresJava

Comprehensive guide to understanding and implementing data structures using Java, covering arrays, linked lists, stacks, queues, trees, and more.

Technical TutorialsAlgorithmC++

Comprehensive guide to data structures, algorithms, and problem-solving using C++. Suitable for students and professionals interested in algorithmic problem-solving.

Technical TutorialsAlgorithmData Structures

Comprehensive introduction to fundamental algorithms and data structures, including sorting, searching, and algorithm design. Suitable for beginners and professionals.

Technical TutorialsAlgorithmData Structures

Enhance your programming and problem-solving skills with Essential Algorithms, a comprehensive guide covering essential concepts for beginners and advanced programmers.

Technical TutorialsAlgorithmData Structures

Explore a wide range of algorithms, from fundamental data structures to advanced techniques like dynamic programming and graph algorithms. Gain practical knowledge for software engineering and problem-solving.