Follows this playlist on YouTube.
Number | Name | Language | Important topics |
---|---|---|---|
1 | Spell-Checker | C | Trie, Tree, Recursion |
2 | Shunting-Yard Algorithm | JavaScript | Recursion, Parsing Strings, Reverse Polish Notation, Trees |
3 | Graphing Calculator | HTML/JavaScript | Canvas, Graphics, UI Controls, GitHub Pages |
4 | Dijkstra's Algorithm | C++ | Recursion, Parallel Arrays, typedef, namespace, Path Finding, 2D Arrays |
5 | RSA Encryption Algorithm | Python | Primality Test, Modular Exponentiation, Modular Multiplicative Inverse, One-way Function |
6 | JSON Evaluation | C++ | String parsing, data storage, delimeters, passing by reference, namespace, inheritance |
7 | Node Class | C++ | Nodes, recursion, trees, practicality, pointers, dereferencing |
8 | DLL Libraries | C++ | Libraries, DLL, Runtime, Include |
9 | JSON Packaging | C++ | .hpp files, condensing, packaging, release |
10 | Shunting-Yard Algorithm | C++ | Recursion, Parsing Strings, Reverse Polish Notation, Trees, Stacks |
11 | Number Base Conversions | C++ | Number bases, binary, decimal, hexadecimal |
12 | Bitwise Operators | C++ | Bitwise AND, OR, NOT, XOR, shifters, bit manipulation |
13 | SpaceX Launches Mobile App | JavaScript (React Native) | RN App Creation, React Navigation, Networking, Styling, JS Dates, JSON Data |
14 | Webscraper | Python | Regex, Beautiful Soup 4, HTML Parsing, CSS Selectors, element trees, data parsing |
15 | Trie | C++ | Trie, Tree, Recursion, Data Structures, Lambda Functions, Data Storage/Access, Memory Management |
16 | Electron.js Library | JavaScript | Electron.js, Node.js, cross platform desktop apps, IPC, Electron app Architecture |
17 | B-Tree | C++ | Tree, Databases, Data Structures, Recursion, Reverse Recursion, Memory Management |
18 | BMP Images | C++ | C++ File IO, BMP file structure, pointers, structures, typdef |
19 | Perlin Noise | C++ | Graphics, procedural generation, pseudorandom, gradients, vectors, textures, realism |
20 | MP3/ID3 | C++ | C++ File IO, metadata, memory copying/manipulation |
21 | Connect Four | Java | Recursion, Scanner IO, Arrays, Enums, Classes, Efficiency |
22 | Generic Lists | C/C++ | Linked lists, Dynamic arrays, memory allocation, pointers, efficiency |
23 | Generic Min Heap | C/C++ | Minimum heaps, priority queue, memory allocation, pointers |
24 | Generic Hash Maps | C/C++ | Hash Maps, Buckets, Hash Functions, Memory allocation, pointers, efficiency |
25 | Command Line Stocks | Python | APIs, Networking, JSON Parsing, CSV Parsing |
26 | AVL Trees | C/C++ | BST, Self-balancing trees, Tree rotation, memory allocation, pointers |
27 | String Streams | C/C++ | Strings, memory allocation/reallocation, pointers, file IO |
28 | JSON (Part 2) | C/C++ | structs, memory allocation, hashmaps, dynamic arrays, string streams, weakly typed data |
29 | Winsock | C/C++ | Windows SDK, Winsock API, Networking, Server/Client Communications |
30 | B-Tree | C | Tree, Databases, Data Structures, Recursion, Reverse Recursion, Memory Management |
31 | HTTP Server | C | Networking, file IO, Winsock API, HTTP requests and responses |
32 | Static File Server | C# | Netorking, file IO, asynchronous functions, HTTP, exception handling |
33 | Web Server Routing | C# | Trees, traversal, C#, auto-implemented properties, nullable type, templates, generics, casting |