About DSA Tools

What this is

A family of interactive learning tools for data structures and algorithms courses, built by Reza Khojasteh for his students. The tools assist your reasoning — they don't replace it.

  • Time Complexity Playground — the course's 5-step Big-O derivation, plus in-browser benchmarking.
  • Recursive Functions Visualizer — watch the call stack and call tree of your own recursive code.
  • BT/BST Coding Assistant — AI-generated practice questions with hidden solutions.
  • Heap Visualizer — insert, extract, and heap sort, as a tree and as the array underneath it.
  • Graph Visualizer — draw a graph, then run BFS, DFS, Dijkstra, Prim, or Kruskal over it.
  • Balanced Trees Visualizer — BST, AVL, red-black, and 2-3 trees, built one insertion at a time.

The course notes behind them

Every tool is built against one chapter of the Seneca Data Structures and Algorithms notes, and each tool's Help page lists the pages behind that one. The tools are a way to practise the notes, not a substitute for reading them.

Privacy, in one place

  • No login, no accounts, no database — on any of the tools.
  • Code you paste or write is analyzed and executed entirely in your browser (Python runs in a sandboxed WebAssembly worker); it is never sent to a server of ours.
  • The one exception is explicit: the BT/BST Assistant (and the Playground's optional AI mode) sends your request to openrouter.ai using your own API key, only when you click, and remembers the key only if you opt in.
  • Each tool's own About page has the full details for that tool.

Who made this

Designed and built by Reza Khojasteh for data structures and algorithms students. New tools join the family over time — the grid menu in the top bar always lists the current set.