Answer:
Each search engine uses a different, proprietary, formula to rank results to give for keywords searched.
Google's formula is set to have at least 1,000 parameters that score basically each page found by its robots (spiders)... then put into a huge database. That data collection is then searched with parameters relative to the searchers (like past searches, location and so on) in order to provide a custom search result.
You and me could be sitting next to each other,doing the same exact search on the same search engine and not receive the same list of results, at least not in the same order.