Instead of comparing greater-than/less-than at each node, you check to see if a bit is set, branching right if it’s set and left if it isn’t.
Let’s put this in context. Tries are a crucial data structure for Internet routing. The routing problem goes like this:
* You have a routing table with entries for "10.0.1.20/32 -> a" and "10.0.0.0/16 -> b".
* You need packets for 10.0.1.20 to go to "a"
* You need packets for 10.0.1.21 to to to "b"
This is a hard problem to solve with a basic binary tree, but with a radix trie, you’re just asking for "1010.0000.0000.0000.0000.0001.0100" (for 10.0.1.20) and "1010." (for 10.0.0.0). Lexicographic search gives you "best match" for routing. The correspondance between routing and radix tries is so strong that the most popular general-purpose radix trie library (the one from CPAN) is actually stolen out of gated.
There's an even cleverer use for these radix tries, that basically makes it easy to take huge sets of individual IP addresses and reduce them down to approximate CIDR ranges. Which is the "aguri" algorithm mentioned in the URL.