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
| Area | What It Covers |
|---|---|
| Programming Fundamentals | Variables, control flow, functions, OOP, recursion, complexity analysis |
| Data Structures & Algorithms | Arrays, linked lists, trees, graphs, sorting, searching, dynamic programming |
| DBMS | Relational model, SQL, normalization, transactions, indexing, NoSQL |
| Operating Systems | Processes, threads, scheduling, memory management, file systems, deadlocks |
| Computer Networks | OSI model, TCP/IP, HTTP, DNS, routing, switching, security protocols |
| OOP | Encapsulation, inheritance, polymorphism, abstraction, design patterns |
| AI & Machine Learning | Supervised/unsupervised learning, neural networks, NLP basics |
| Cybersecurity | Cryptography, network security, ethical hacking, OWASP top 10 |
| Cloud Computing | Virtualization, 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.
Related Blog Articles
- Gin vs Echo — Go Web Framework Comparison
- Concurrency in Computer Science
- WebSockets: A Comprehensive Guide
- Understanding Concurrent Programming
- SQL GROUP BY vs DISTINCT
Pages in this directory:
-
1. Programming Fundamentals
Programming Fundamentals:
-
2. Data Structures And Algorithms
Data Structures And Algorithms:
-
3. Computer Networks
Computer Networks:
-
4. Database Management Systems
Database Management Systems:
-
5. Operating Systems
Operating Systems:
-
6. Software Engineering
Software Engineering:
-
7. Object-Oriented Programming
Object-Oriented Programming:
-
8. Web Technologies
Web Technologies:
-
9. Computer Architecture
Computer Architecture:
-
10. Artificial Intelligence And Machine Learning
Artificial Intelligence And Machine Learning:
-
11. Data Science And Big Data
Data Science And Big Data:
-
12. Cyber Security And Cryptography
Cyber Security And Cryptography:
-
13. Theory Of Computation
Theory Of Computation:
-
14. Compiler Design
Compiler Design:
-
15. Human-Computer Interaction
Human-Computer Interaction:
-
16. Distributed Systems
Distributed Systems:
-
17. Cloud Computing
Cloud Computing:
-
18. Internet Of Things
Internet Of Things:
-
19. Digital Logic Design
Digital Logic Design:
-
20. Discrete Mathematics
Discrete Mathematics:
-
21. Linear Algebra And Probability For Computer Science
Linear Algebra And Probability For Computer Science:
-
22. Computer Graphics
Computer Graphics:
-
23. Mobile Application Development
Mobile Application Development:
-
24. Blockchain Technology
Blockchain Technology:
-
25. Nodejs
Nodejs: