跳至正文
View Categories

< 1 min read

1.课程回顾 #

1.1 列表 #

我们已经对列表非常熟悉了,列表相当于一个队列,通常用在同一类的变量组。

例如:

①比如我们将十二生肖放入列表中,那么每一个生肖就是一个变量,十二生肖可以看成一组变量。

②比如今天是周几?从周一到周日,共有7个变量,同样是相同类的变量。

列表的功能非常的强大,可以随意的进行增加、删除、查询等操作内部的数据变量。

2.学习目标与任务 #

2.1 学习目标 #

(1)学习并掌握顺序查找算法原理;

(2)熟练使用询问回答机制;

(3)熟练使用自定义、变量、列表等功能

2.2 顺序查找 #

顺序查找法又称为线性查找法(Linear Search),是最基本的查找方法。

简而言之,就是从数据开头按顺序寻找到最后,看是否有符合的对应数据。

比如在玩扑克牌的时候,若不需要大小王,那么我们会拿过来所有的牌,从头到尾地一张一张地找。

但是,当数据量大时,该算法查找效率极低,所以,顺序查找算法适用于小量数据的场合。

顺序查找的优点是数据无需事先排序,程序较容易编写;

缺点是必须要从头到尾遍历一次,查找时间与数据量成正比,效率较低。

(1)程序运行后,列表中随机加入(1-100)50个数字;

(2)小猫询问需要查找那个数,然后输入数值;

(3)如果找到了,小猫就说出数字所在的项目数;

(4)如果不存在,小猫就说数字不在列表中。

2.3 作品分析 #

(1)如何在列表中随机加入数据?

(2)如何使用询问回答?

(3)如何设置变量?

3.编程思路与步骤 #

3.1 编程思路 #

3.2 顺序查找编程步骤 #

(1)初始化

创建列表list、初始化清理列表,并将1-100随机数加入列表中。

创建两个变量:i(后续转换为列表序号)、列表次序(保存输入数字与列表中相同量的序号)

随机取数极有可能出现重复数字,所以必须考虑显示多个列表编号的情况。

(2)循环执行项目数的次数

初始设置加入多少行数据,遍历查找时就执行项目数次。

(3)查找的程序

首先,将变量 i 逐步增加,每增加一次就说出对应列表的值。

其次,如果回答的数与列表中第 i 项相同,那么就将”列表次序“设为 列表次序+i

随着查找的继续,”列表次序“会把每个相同的值都进行存储。

最后,把存储好的”回答“=列表中第i项的值说出来,否则就说未找到。

4.问答和课后练习 #

大家思考一下,上面这段脚本要放在哪里?为何要这么编写?

该如何解决呢?尝试一下吧!