Patent ID: 8620915

Claim:
A computer-implemented method performed at a server system having one or more processors and memory, the method comprising: receiving a search query from a user; identifying a list of search results associated with the search query, wherein each search result has an initial position in the list; identifying a user profile associated with the user, wherein the user profile includes a set of user-preferred search results that is determined, at least in part, by: identifying a set of candidate search results in a search history of the user, wherein each of the candidate search results has been selected by the user for at least a predefined minimum number of times; determining a popularity metric for each of the candidate search results; and selecting a subset of the candidate search results whose associated popularity metrics exceed a predefined threshold as the set of user-preferred search results; identifying in the list of search results, one or more search results that are associated with at least one of the user-preferred search results; reordering the list of search results by moving each of the identified search results from its initial position by an offset; and providing the reordered list of search results to the user.