Bill Slawski, wrote an excellent post '20 Ways Search Engines May Rerank Search Results' at SEO By The Sea. Bill explains, "Search engines try to match words used in queries with words found on pages or in links pointing to those pages when providing search results.
Often, the order that pages are returned to a searcher are based upon an indexing of text on those pages, text in links pointing to those pages, and some measure of importance based upon link popularity."
"Before pages are served to a viewer, however, they may be reranked for one reason or another." Here are a few possibilities listed by Bill:
1. Filtering of duplicate, or near duplicate, content
2. Removing multiple relevant pages from the same site
3. Based upon personal interests
4. Reranking based upon local inter-connectivity
5. Reranking and removing results based upon mobile device friendliness
6. Reranking based upon additional terms (boosting) and comparing text similarity
7. Reranking by looking at blogs, news, and web pages as infectious disease
Bill concludes by saying that the list is no a comprehensive listing of documents or processes but it does cover a lot of different possibilities.