1. A method comprising: receiving, by a computer accessible via a network and having a display, input from a user via a web address bar to navigate to a web site; navigating to the web site by the computer; storing, by the computer, information about the web site in a file unless predetermined characteristics of actions performed by the user on the web site once the user has navigated to the web site are present; repeating, by the computer, the navigating and storing steps for each requested web site; generating, by the computer, a first binary search tree based on the file, the first binary search tree including a first plurality of keys corresponding to keywords, wherein each key of the first plurality of keys is associated with one or more URLs; generating, by the computer, a second binary search tree based on the file, the second binary search tree including a second plurality of keys corresponding to URLs, wherein each key of the second plurality of keys is associated with metadata associated with a respective URL; receiving, by the computer, a search query of the user as the search query is being entered by the user into a search area of a visibly displayed user interface of an application program executed by the computer, the search area separate from the web address bar; retrieving, by the computer from the first binary search tree, a plurality of URLs associated with one or more keywords included in the search query; retrieving, by the computer from the second binary search tree, metadata associated with the plurality of URLs; and displaying, by the computer, web site links corresponding to the plurality of URLs to be visibly displayed on the display as the search query is being entered, the web site links comprising, in addition to the URLs associated with the previously navigated web sites, information previously collected for the web sites and available via the network, the information comprising a timestamp of a most recent visit to the previously navigated web sites by the user.