16. A smartphone comprising: a touchscreen display configured to: display a virtual keypad, wherein the virtual keypad includes an insufficient quantity of letter-input keys to map each letter of an alphabet to a single letter-input key, and receive a user selection of a particular letter-input key on the virtual keypad; and a character assignment module configured to determine an individual letter or grouping of letters that has been assigned to the particular letter-input key on the virtual keypad based on an frequency with which the individual letter or grouping of letters occurs in a subset of documents in a corpus; wherein the character assignment module is configured to update an assignment of the letters of the alphabet to the letter-input keys of the virtual keypad based on determining that the documents in the corpus have been updated.
21. The smartphone of claim 16 , comprising a character frequency analyzer configured to determine a frequency with which each letter of the alphabet occurs in the subset of documents in the corpus.