1. A process for reordering items retrieved from a database for display to a user, comprising the steps of: accepting user input from a keyboard; providing a linguistic database; wherein said linguistic database contains words ordered using a linguistic model; dynamically retrieving words from said linguistic database that comprise letters formed by the user's keyboard input; displaying a list of said retrieved words to the user; wherein words in said list are ordered using the linguistic database ordering and a dynamic reordering frequency count; wherein the dynamic reordering frequency count overrides the linguistic database ordering for words in said list; and assigning a dynamic reordering frequency count to words selected by the user from said list.