python编程索引_Python编程第七课 构建搜索引擎:添加索引与查询流程

本文介绍如何创建一个简单的搜索引擎,重点是构建索引以提高查询效率。通过理解大型搜索引擎的基本原理,学习如何设计数据结构,尤其是选择适合的索引结构。文中详细解释了如何使用Python实现添加关键字到索引以及查询流程,帮助读者掌握搜索引擎的核心概念。
摘要由CSDN通过智能技术生成

在这个系列文章中,你将学习如何完成一个简单的搜索引擎,以及当有人想要用关键词的搜索你的博客网页时,如何响应查询。

你还将学习网络和互联网是如何工作的,进一步了解如何建立一个你自己的搜索索引。

百度、谷歌这些大型搜索引擎虽然很复杂,但是背后的原理和思想是一样的,所以你也可以知道为什么你输入一个关键词,这些搜索引擎就能给你一串页面答案。

贯穿整个系列的主要计算机科学新思想是:如何建立复杂的数据结构。

你将学习如何设计一个你自己就能搭建的数据结构,这样你就可以在你的爬取的网页里响应查询,而不需要在每次都重新扫描所有的网页。你将为此建立的结构就是索引(Index)。

索引的目标是映射一个关键字和该关键字的位置。例如,在一本书的索引中,你可以看到一个页码,它可以作为一个映射,在哪里可以找到一个术语或概念。

索引中的关键概念会让我们找到我们想要的参考资料。

对于搜索引擎来说,索引为你提供了一个关键词映射到网页列表的方法,也就是这些特定关键词出现的URL。

一旦你完成了建立索引的工作,那么查找的速度真的很快。

决定数据结构是构建软件最重要的部分之一。只要你选对了数据结构,剩下的代码就会容易写很多。我们通过下面这个例题来深入了解一下:

在这些数据结构中,哪种数据结构是表示你的搜索引擎的索引的好方法?

.

.

.

.

.

答案揭晓:最好的选择是d,b紧随其后。选择a和c会非常困难。

下面我来解释一下是为什么:

a -很难阅读,因为所有的东西都在一个列表里。这种结构也会使关键词难以循环。

b -这个选项还可以,但不如d。b的结构是这样的,有一个列表,列表中的每个元素都是一个列表,元素列表本身就是列表。这种结构最大的好处是很容易从urls中分辨出关键词,关键词永远是列表的第一个元素。也更容易去看关键词,因为对于每个列表,你只需要看第一个元素,检查是否是你要找的关键词,如果不是,就继续看下一个。这种结构唯一的缺点是,关键词和urls之间的区别可以更加清晰。

c -

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值