首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网络技术 > 网络基础 >

搜索引擎对结果进行排序是怎么进行的

2012-02-21 
搜索引擎对结果进行排序是如何进行的?一般的搜索引擎对搜索到的结果,并返回TOP-K个结果,这TOP-K个结果是所

搜索引擎对结果进行排序是如何进行的?
一般的搜索引擎对搜索到的结果,并返回TOP-K个结果,这TOP-K个结果是所用的结果集合的前K个还是在多少个以内的前K个(局部最好的K个结果),类似于贪心算法。
下面举个例子说明一下:
例如我们搜索:关键词1,关键词2
假如百度搜索到一百万万个结果,但返回给我们是top-k个结果,
第一种方案:这top-k个结果是一百万个里面最好的,并返回给客户

第二种方案:给一个容量为1万的队列,每次把结果添加到这个队列里面,并弹出当前一万零一个最好的一个结果保存到top-k的集合中,从而使得这个队列一直是1万个,直到找到top-k个结果后返回给客户。

一般的搜索引擎是采取那种方案?我个人觉得是第二种方案,因为这样更省时间,因为此时返回的结果是局部最优,但不是全局最优,意思类似于贪心算!

在此想请教一下个为大虾,有没有更新的想法个观点,希望大虾们能和我分享一下。
谢谢了!!!!

[解决办法]
看一下《深入搜索引擎》你就懂了
[解决办法]
不是用普通的队列 而要用二叉堆
[解决办法]
wo jiangyou

热点排行