How the unscrambler works
No magic and no guessing — just a neat trick with sorted letters. Here is the whole idea in four steps.
- 1
Every word gets a fingerprint
Sort the letters of a word alphabetically and you get its “signature”. listen, silent and enlist all collapse to
eilnst. Words that are anagrams of each other always share one signature, so we store our dictionary as a lookup table from signature to the list of words that match it. - 2
Your letters get sorted too
We clean up what you typed — lowercase it, drop anything that is not a letter, cap it at 18 characters — and sort it the same way. Now your input speaks the same language as the dictionary.
- 3
We try every combination of your letters
A four-letter answer can hide inside seven letters, so we compare your letter counts against every signature in the dictionary and keep the ones that fit — each letter used at most as many times as you supplied it. That stays fast even with 18 letters, because the work depends on the size of the dictionary rather than on the number of possible letter combinations.
- 4
One lookup per subset
Each subset signature is checked against the lookup table. A hit returns every real word with those exact letters. We collect the hits, remove duplicates, sort them longest-first and alphabetically inside each length, then group them so you can filter by 3-letter, 4-letter, 5-letter words and so on.
Why it feels instant
The heavy work — reading the dictionary and building the signature table — happens once, in your browser, the first time you unscramble something. After that every search is a handful of hash-table lookups. Nothing is sent to a server, so there is no network round trip to wait for.