A trie with top-10 results stored at each node answered one-character prefixes in 0.04 microseconds but used 297 MB for 234,454 words and 1,414 MB for 300,000 phrases, about 140 and 244 times the raw
A sorted array answered alphabetical top-10 in 0.2 to 0.8 microseconds, but ranking by popularity took 198.8 microseconds at one character on 300,000 phrases, and the trie lost to the array at five
A hybrid table of precomputed top-10 lists for prefixes up to three characters used 0.8 MB, built in 155 ms and answered in 0.08 microseconds or less, with a sorted array handling longer prefixes.