Skip to content

Computer Science

Intermediate

Computer science is the study of computation, information, and automation. At its core, it investigates what problems can be solved algorithmically, how efficiently they can be solved, and how to represent and manipulate data to accomplish useful tasks. The discipline spans theoretical foundations such as the theory of computation and formal languages, which explore the mathematical limits of what computers can and cannot do, alongside practical domains like algorithm design, data structures, and software engineering that turn abstract ideas into working systems used by billions of people every day.

The field encompasses an extraordinarily broad range of subdomains. Data structures and algorithms form the backbone of efficient software, enabling everything from search engines to social networks. Operating systems manage hardware resources and provide the platform on which applications run. Computer networking connects devices across the globe, while database systems organize and retrieve vast amounts of information. Artificial intelligence and machine learning have emerged as transformative areas, enabling computers to recognize speech, translate languages, drive vehicles, and generate creative content by learning patterns from data rather than following explicit instructions.

Software engineering applies disciplined engineering principles to the design, development, testing, and maintenance of software systems. Combined with areas like cybersecurity, human-computer interaction, and distributed computing, computer science touches virtually every aspect of modern life. Whether you are interested in building mobile applications, designing intelligent systems, analyzing massive datasets, or understanding the theoretical limits of computation, computer science provides the conceptual tools and practical skills to shape the future of technology.

Practice a little. See where you stand.

Ready to practice?5 minutes. No pressure.

Key Concepts

One concept at a time.

Explore your way

Choose a different way to engage with this topic — no grading, just richer thinking.

Explore your way — choose one:

Explore with AI →
Curriculum alignment— Standards-aligned

Grade level

Grades 9-12College+Adult / Professional

Learning objectives

  • Identify the foundational concepts of computer science including algorithms, data structures, and computational complexity
  • Apply algorithmic problem-solving strategies including divide-and-conquer, dynamic programming, and graph traversal
  • Analyze the time and space complexity of algorithms to select efficient solutions for computational problems
  • Design software systems that integrate appropriate data structures, algorithms, and architectural patterns for scalability

Recommended Resources

This page contains affiliate links. We may earn a commission at no extra cost to you.

Books

Introduction to Algorithms

by Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein

Structure and Interpretation of Computer Programs

by Harold Abelson, Gerald Jay Sussman

Clean Code: A Handbook of Agile Software Craftsmanship

by Robert C. Martin

Computer Science: An Overview

by J. Glenn Brookshear, Dennis Brylow

Courses

CS50: Introduction to Computer Science

edXEnroll

Algorithms Specialization

CourseraEnroll
Computer Science - Learn, Quiz & Study | PiqCue