Ackermann function
Follow recursive calls and stack depth as a few simple rules produce explosive growth. Explore a growth matrix and the limits of direct computation.
Computer scienceTry itVisuApps
Understand algorithms and data structures step by step
Apps
Follow recursive calls and stack depth as a few simple rules produce explosive growth. Explore a growth matrix and the limits of direct computation.
Computer scienceTry itTwo elevator strategies compete in a duel on the same call stream — FCFS, SSTF, SCAN, LOOK, zoning or destination dispatch. Metrics and histograms expose the trade-off between mean and longest wait, and a click on a bar shows the passenger who lived it.
Computer scienceTry itPlace values you can touch: flip bits and watch the decimal, hex and octal values emerge — including the remainder algorithm. In complement mode the MSB visibly weighs negative (−128 + 8 + 2 = −118); in addition mode the carries travel like in column addition — including overflow when the carry out of the MSB is lost.
Computer scienceTry itRun both searches on the same sorted array and compare step counts. See how halving the search space changes growth from linear to logarithmic.
Computer scienceTry itTrace the halve-or-3n+1 rule in 2D and compare neighbouring starting values as 3D trajectories. Explore the still-unproved conjecture behind their behaviour.
Computer scienceTry itFollow data between registers, ALU, caches, memory and storage. Explore cache misses, addition, DMA, memory protection and pipelining with cycle counts.
Computer scienceTry itEnter Python code and watch each function call create a room with arguments, local variables and return values. Step forwards or backwards through recursion.
Computer scienceTry itSign, exponent, mantissa — clickable bit by bit, with the exactly decoded value. The number line shows every representable number as a tick: the gaps double at each power of two. Store 0.1 and see the rounding error — and the demo panel recomputes 0.1 + 0.2 ≠ 0.3 in the mini format.
Computer scienceTry itHow a string becomes a table slot: the calculator processes the input character by character with the actual numbers plugged in, ending in hash mod m. Six methods from deliberately bad (length, first letter, character sum) to usable (polynomial hash as in Java, djb2, FNV-1a) run against the same words — anagrams collide under the sum, similar words clump, and even the best function has collisions. Bit comparison of two inputs, prime vs. power-of-two table size, statistics against the ideal.
Computer scienceTry itHeapsort step by step — build the heap, restore the heap property and sort step by step.
Computer scienceTry itToggle inputs to AND, OR, NOT, XOR, NAND and NOR gates. Follow illuminated wires and truth tables, then combine gates into a half adder.
Computer scienceTry itCompare finding a clique with checking a certificate. Explore polynomial and exponential growth and the possible relationships between P, NP and NP-complete problems.
Computer scienceTry itA random number generator is a fixed rule: same seed, same sequence, and eventually the loop closes. Middle-square, a linear congruential generator with freely adjustable parameters, RANDU, a shift register and xorshift side by side — good ones and deliberately bad ones. Four views reveal what a list of numbers hides: the rule with values plugged in, the cycle as a rho shape, the scatter of consecutive pairs plus a rotatable cloud of triples (RANDU collapses into 15 planes), and a histogram.
Computer scienceTry itQuicksort step by step — follow pivot choice, partitioning and swap operations interactively.
Computer scienceTry itRegular expressions with instant feedback: type a pattern and watch live what re.finditer grabs in the text — matches glow in alternating colours, the match list shows positions and groups. Five tasks (numbers, emails, dates, backreferences …) with target checking, hints and an insertable solution, plus flags (re.I/M/S) and a cheat sheet.
Computer scienceTry itElementary cellular automata with all 256 rules: rule 90 jumps to any generation by formula, rule 30 must compute every step (irreducibility); plus a prediction game and an LLM's compute budget per token.
Computer scienceTry itThe SHA-256 compression function as a living circuit diagram: registers a to h, Ch, Maj, Σ0, Σ1 and the adders with live values on every wire, playable step by step, every operation with its bitwise calculation. The app computes a teaching model with 8-bit words and 32 rounds following exactly the rules of the original (padding, message schedule, constants from prime roots); the real SHA-256 is shown alongside. The avalanche view shows how one changed letter flips half of all bits round by round.
Computer scienceTry itFollow a tape, read/write head and transition table through binary increments, unary addition, palindrome tests and Busy Beaver examples, one rule at a time.
Computer scienceTry itThe classic recursion puzzle in space: choose the number of disks, let the algorithm solve it optimally (2ⁿ−1 moves) or move them yourself — peg by peg the recursive idea T(n)=2·T(n−1)+1 becomes visible.
Computer scienceTry itbuilt yourself in five stages — a NAND from two transistors, an XOR from NANDs, then half and full adder and finally a 4-bit adder computing 7 + 9. The carry ripples through visibly, and you can zoom in all the way to the transistor.
Computer scienceTry itStep by step: one's complement, +1, computing subtraction as addition — with freely chosen numbers and 4-/8-/16-bit display.
Computer scienceTry itWant to use these apps in your courses? Let’s find out what works for you.
One form, three matters. We answer personally.
We show heyprof on your own material. Tell us what you teach and we will prepare the conversation around it.