1. A method of presenting search results in response to a query on behalf of a user of a device having a processor and a display, the method comprising: executing on the processor instructions configured to: execute the query on at least one search engine to generate a plurality of search results; for respective search results generated by the at least one search engine: compute a search result relevance score for the search result; identify at least one topic semantically associated with the search result, identify a topic type of the at least one topic; identify at least one distinctive characteristic of the search result; and associating the search result with the identified topic type according to the at least one identified distinctive characteristic by evaluating the search result with a classifier configured to identify the topic types of a search result having the at least one distinctive characteristic; for respective topic types, compute a topic type relevance score of the topic type based on the relevance scores of the search results associated with the topic type; and present on the display: a plurality of topic type groups respectively representing a topic type and comprising a plurality of search results semantically associated with at least one topic of the topic type, the topic type groups sorted in descending order by the relevance scores of the search results within the topic type group, the groups comprising tabs in a tabbed user interface; and within respective topic type groups, the search results semantically associated with at least one topic of the topic type sorted in descending order by the search result relevance scores.