Skip to main content

Computer Science Study Guide

Comprehensive CS notes covering programming fundamentals, data structures, algorithms, databases, operating systems, computer networks, AI, cybersecurity, and advanced topics for university exams and technical interviews.

Subject Areas

AreaWhat It Covers
Programming FundamentalsVariables, control flow, functions, OOP, recursion, complexity analysis
Data Structures & AlgorithmsArrays, linked lists, trees, graphs, sorting, searching, dynamic programming
DBMSRelational model, SQL, normalization, transactions, indexing, NoSQL
Operating SystemsProcesses, threads, scheduling, memory management, file systems, deadlocks
Computer NetworksOSI model, TCP/IP, HTTP, DNS, routing, switching, security protocols
OOPEncapsulation, inheritance, polymorphism, abstraction, design patterns
AI & Machine LearningSupervised/unsupervised learning, neural networks, NLP basics
CybersecurityCryptography, network security, ethical hacking, OWASP top 10
Cloud ComputingVirtualization, containers, microservices, AWS/GCP/Azure fundamentals
Go (Golang)Goroutines, channels, interfaces, web frameworks, concurrency patterns

Frequently Asked Questions

What data structures are most important for coding interviews? Focus on: arrays and strings (most common), hash maps, stacks and queues, trees (binary trees, BSTs, tries), graphs (BFS/DFS), and heaps. These cover roughly 90% of interview problems. Dynamic programming and sorting/searching are also critical.

What is the difference between process and thread? A process is an independent program in execution with its own memory space. A thread is a lightweight unit of execution within a process — multiple threads share the same memory and resources. Context switching between threads is cheaper than between processes.

What are ACID properties in databases? ACID stands for Atomicity (transaction is all-or-nothing), Consistency (data always stays valid), Isolation (concurrent transactions don't interfere), and Durability (committed data persists). These properties guarantee reliable database transactions, especially in relational databases.

What is the OSI model? The OSI model has 7 layers: Physical (bits/cables), Data Link (frames/MAC), Network (routing/IP), Transport (TCP/UDP), Session (connection management), Presentation (encoding/encryption), and Application (HTTP/FTP/DNS). TCP/IP collapses these into 4 layers.

Pages in this directory: