Computer Science
Outline24 topics and 163 subtopics mapped. This is the ground the track will cover — the lessons aren't written yet.
- 01
Pick a Language
7 subtopics- Python
- Go
- C#
- Rust
- C++
- C
- Java
- 02
Data Structures
19 subtopics- Linked List
- Stack
- Queue
- Hash Table
- Array
- Tree
- Binary Tree
- Binary Search Tree
- Full Binary Tree
- Complete Binary Tree
- Balanced Tree
- Unbalanced Tree
- Graph
- Directed Graph
- Undirected Graph
- Spanning Tree
- Adjacency Matrix
- Adjacency List
- Heap
- 03
Asymptotic Notation
9 subtopics- Big O
- Big-Theta
- Big Omega
- Constant
- Logarithmic
- Linear
- Polynomial
- Exponential
- Factorial
- 04
Common Algorithms
33 subtopics- Tail Recursion
- Non-Tail Recursion
- LRU Cache
- MFU Cache
- Binary Search
- Linear Search
- Bubble Sort
- Selection Sort
- Insertion Sort
- Heap Sort
- Quick Sort
- Merge Sort
- Pre-Order Traversal
- In-Order Traversal
- Post Order Traversal
- Breadth First Search
- Depth First Search
- Breadth First Search
- Depth First Search
- Bellman Ford's Algorithm
- Dijkstra's Algorithm
- A* Algorithm
- Finding Hamiltonian Paths
- Solving N Queen Problem
- Maze Solving Problem
- The Knight's Tour Problem
- Dijkstra's Algorithm
- Huffman Coding
- Kruskal's Algorithm
- Ford-Fulkerson Algorithm
- Prim's Algorithm
- Rabin-Karp Algorithm
- LFU Cache
- 05
String Search & Manipulations
7 subtopics- Search Pattern in Text
- Suffix Arrays
- Brute Force Search
- Knuth-Morris Pratt
- Boyer-Moore
- Robin-Karp
- Substring Search
- 06
Floating Point Math
- 07
Endianess
2 subtopics- Big Endian
- Little Endian
- 08
Common UML Diagrams
2 subtopics- Unicode
- ASCII
- 09
Character Encodings
5 subtopics- Class Diagrams
- Usecase Diagrams
- Activity Diagrams
- Statemachine Diagrams
- Sequence Diagrams
- 10
Design Patterns
5 subtopics- GoF Design Patterns
- Architectural Patterns
- Dependency Injection
- Null Object Pattern
- Type Object Pattern
- 11
Basic Math Skills
2 subtopics- Probability
- Combinatorics
- 12
Complexity Classes
3 subtopics- P
- NP
- NP Hard
- 13
NP Complete
4 subtopics- P = NP
- Travelling Salesman Problem
- Knapsack Problem
- Longest Path Problem
- 14
Tries
- 15
Balanced Search Trees
6 subtopics- AVL Trees
- Red / Black Trees
- 2 3 Search Trees
- 2 3 4 Trees
- K-ary / M-ary Tree
- B-Tree
- 16
System Design
17 subtopics- Horizontal vs Vertical Scaling
- Load Balancing
- Clustering
- Caching
- CDN
- Proxy
- CAP Theorem
- Queues
- Architectural Styles
- REST
- GraphQL
- gRPC
- Cloud Design Patterns
- Long Polling
- Short Polling
- Web Sockets
- SSE
- 17
Databases
19 subtopics- SQL vs NoSQL Databases
- Normalization / Denormalization
- Entity-Relationship Model
- DDL
- DML
- DQL
- DCL
- Locking
- ACID Model
- BASE
- CAP Theorem
- PACELC
- Indexes
- Views
- Transactions
- Stored Procedures
- Database Federation
- Replication
- Sharding
- 18
Networking
6 subtopics- OSI Model
- TCP/IP Model
- DNS
- HTTP
- TLS & HTTPS
- Sockets
- 19
Security
4 subtopics- Public Key Cryptography
- Hashing / Encryption / Encoding
- Hashing Algorithms
- OWASP Top 10
- 20
How Computers Work
5 subtopics- How CPU Executes Programs
- How Computers Calculate
- Registers and RAM
- Instructions and Programs
- CPU Cache
- 21
Processes and Threads
7 subtopics- Process Forking
- Memory Management
- Lock / Mutex / Semaphore
- Concurrency in Multiple Cores
- Scheduling Algorithms
- CPU Interrupts
- Processes vs Threads
- 22
K-D Trees
- 23
Skip Lists
1 subtopic- Co-NP
- 24
Bitwise Operators
