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.问答和课后练习 #
大家思考一下,上面这段脚本要放在哪里?为何要这么编写?
该如何解决呢?尝试一下吧!