ESP32-S3 Bench Guide
ESP32-S3 N16R8 bench guide: live pinout, lessons, simulators and the bench log.
翻譯準備中
尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
製作者的介紹僅有上面的一句話。 更多詳情請閱讀儲存庫 README。 儲存庫 README ↗
正在載入完整 README。
檢視完整 README ↗An interactive visualizer for data structures and algorithms, made so students can watch each step happen and change the input themselves. Every algorithm plays as an animation you can pause, rewind and scrub, with the real source code highlighted line by line.
Try it: algo-visual-iota.vercel.app
Most people meet algorithms as pseudocode next to a diagram frozen at one moment. What happens between one line and the next is left to the imagination. algo·visual shows that part: every comparison, swap, pointer change and table cell is a step you can pause on, rewind or replay. It's meant for students, whether you're seeing this material for the first time or revising for an exam or interview. Teachers can put it on a projector too.
36 algorithms across five categories. Each one has a step-by-step trace, its source and pseudocode highlighted line by line, live variables, counters, an input editor and a shareable URL.
| Category | Algorithms |
|---|---|
| Sorting | bubble, selection, insertion, shell, merge (bottom-up, aux buffer), quick (Lomuto), heap, counting, radix |
| Searching | linear, binary, jump |
| Data structures | dynamic array, singly and doubly linked list, stack, queue, hash table (chaining), BST, AVL (named rotations), min-heap, trie |
| Graphs | BFS and DFS (grid and graph), Dijkstra (weighted grid and graph), A*, topological sort (Kahn), Prim, Kruskal (union-find table) |
| Dynamic programming | Fibonacci, longest common subsequence, 0/1 knapsack, edit distance |
Other things you can do:
/compare).? for the keyboard shortcuts.| Key | Action |
|---|---|
Space | play / pause |
→ / ← | step forward / back |
Home / End | first / last step |
1 to 6 | speed 0.25× … 8× |
R | randomise the input |
⌘K | search |
? | shortcuts |
algo·visual is open source and built for learners, so ideas from students and teachers are the most useful kind of help. You don't need to write code to contribute.
Browse the open issues to see what's already planned, and add a thumbs-up reaction to the ones you want most.
You need Node.js 20.9 or newer and pnpm (corepack enable will set up the version this repo pins).
git clone https://github.com/ImranSefat/algo-visual.git
cd algo-visual
pnpm install
pnpm dev # http://localhost:3000
Other scripts:
pnpm test # Vitest: invariants and correctness for every algorithm
pnpm lint
pnpm build # every route is prerendered as static HTML
pnpm agent # try the AI tool layer from the terminal (src/agent/README.md)
Each algorithm is a plain TypeScript generator. It runs once and yields a snapshot at every interesting moment: the data, what is highlighted, the current line of code, the live variables and a one-sentence explanation. Those snapshots form a timeline, so play, pause, rewind and compare mode only change which snapshot is on screen. Renderers draw one snapshot at a time, and because every element keeps a stable id, moving between snapshots becomes a spring animation.
src/algorithms/** Pure TypeScript. No React, no DOM. Generators yield Step<S>.
│ runAlgorithm(algo, spec) → Step[] (run once per input change)
src/store/playback.ts zustand: steps, index, playing, speed (setTimeout clock)
src/store/input.ts zustand: the input spec; changes re-run the generator
│ steps[index]
src/components/renderers/** Pure functions of a Step; motion animates between steps
src/components/code/** Shiki (server only) and a single sliding highlight bar
src/algorithms/core holds the types (types.ts), the step tracer (step.ts), the state shape each renderer reads (states.ts), input specs, validation and seeded random inputs.src/algorithms/registry.ts is the single list of algorithms. The landing page, the ⌘K search, the static routes and the OG images all read from it.ArrayBars, ArrayBarsAux, Heap, LinkedList, Stack, Queue, HashTable, Tree (d3-hierarchy), GridGraph (editable), NodeGraph (d3-force) and DPTable./[category]/[slug] is one static route that renders all 36 algorithm pages. URL state is read on the client.CONTRIBUTING.md walks through adding an algorithm or a renderer.
以上為 README 的開頭部分。其餘內容請閱讀原文。 檢視完整 README ↗