• 我刚入门,收藏一个基础问题:什么是倒排索引


    在多篇文章中寻找一个词有两种方法,一种是字符串匹配,即在每篇文章中做字符串匹配,查找该字符串是否存在。字符串匹配有多种方法,可以参见《算法导论》的32章《String Matching》,这里就不细表了。

        另一种方法就是先做倒排索引,再查找。什么是倒排索引呢?请看下面的例子:
    假设文章1的内容是:aaa bbb ccc ddd
    文章2的内容是:bbb ddd yyy

        上面的对应关系是:“文章号”对“文章中所有关键词”。倒排索引把这个关系倒过来,变成:“关键词”对“拥有该关键词的所有文章号”。文章1,2经过倒排后变成:
    aaa 1
    bbb 1,2
    ccc 1
    ddd 1,2
    yyy 2

        当建好了上面所示的倒排索引后,一旦我们要查找哪些文章中含有某个关键字时,只需取出该关键词所对应的文章号就行了。
        比如我们查找aaa,返回1.查找ddd,返回1,2

        一个使用倒排索引的经典例子是:但凡英文的技术书籍,书的最后面都有一个index,你可以通过它找到一个关键词出现在哪些页面里。这个就是关键词对拥有该关键词的页面的索引。

        web搜索引擎中所用的倒排索引就是这样的。首先对一篇文章分词,去掉“的、啊、哦”等等停用词,然后对剩下的关键词建立倒排索引。

  • 相关阅读:
    react 常用组件整理
    react 问题记录二(侧重于state或者说server层操作)
    web前端常用小函数汇总
    vue 路由跳转四种方式 (带参数) 【转藏】
    微信小程序实用组件:省市区三级联动
    vue table组件显示一个图片

    520
    微信小程序,子页面调用父页面的函数和方法
    webstorm 右侧滚动条怎么设置颜色
  • 原文地址:https://www.cnblogs.com/ilovexiao/p/951501.html
Copyright © 2020-2023  润新知