>> [音乐播放]
DOUG LLOYD：线性 搜索是一种算法，我们
可用来查找在数组中的元素。
算法召回 是一步一步的设置
的用于完成任务的指令。
>> 线性搜索 算法的工作方式如下。
跨越阵列迭代从左 没错，找指定的元素。
>> 在伪代码中，这是一个更 蒸馏版本的这句话，
如果第一元件是什么 你要寻找的，可以停止。
否则，移动到下一个元件和 继续下去，一遍又一遍，直到找到
元素，或者你没有。
因此，我们可以用线性 搜索算法，例如，
找到目标值 九里这阵。
好了，我们从头开始。
如果这就是我们 寻找，我们可以停止。
这不是，我们不是在寻找11。
所以否则，移动到下一个元素。
>> 所以，我们就来看看23。
23，我们在寻找什么？
哦，不，所以我们就移动到下一个 元件，并且下一个元素，
我们继续经历 这个过程中一遍又一遍
以上，直到我们的土地 在这样的情况下。
>> 九是我们要找的， 和该阵列的这些元素
是，它的值是9。
因此，我们找到了我们 寻找，我们可以停下来。
线性搜索有 完成后，成功。
>> 但有关，如果我们要寻找什么 一个元素，这不是在我们的数组。
是否线性搜索仍然有效？
那么肯定。
因此，我们重复这个过程 起始于第一元件。
如果这就是我们 寻找，我们可以停止。
它不是。
否则，我们进入下一个元素。
>> 但是我们可以不断的重复这个过程， 检查反过来每个元素，
希望我们找到了50号。
但我们不会知道 我们已经找到了50号
或者，如果我们没有，直到我们已经加强 在阵列上的每一个元素。
>> 只有当我们已经做了 这并拿出短，
我们可以得出结论： 50不数组中。
这样一来，线性搜索 算法，那么它失败了，本身。
但不是在某种意义上说，它 是不成功的在做什么
我们要求它做的事情。
>> 这是不成功的作为 就像它没有找到50，
但50并没有到数组中。
但是，我们已经彻底搜查 通过每一个元素
所以，虽然我们没有发现 任何事情，线性搜索仍
成功，即使 元素不是阵列中。
>> 那么什么是最坏的情况下 方案与线性搜索？
那么我们来看看通过 每一个元件，
要么是因为目标元素 是阵列的最后一个元素，
或者我们正在寻找的元素不 实际存在阵列中的。
什么是最好的情况？
嗯，我们可能会发现 元素立刻。
有多少元素和 我们接着来看看
在最好的情况下， 如果我们寻找它
我们发现它在开始的时候？
我们可以立即停止。
>> 这是什么说的 线性搜索的复杂性？
井在最坏的情况下，我们有 看看每一个元素。
而且使其在邻 N，在最坏的情况下。
>> 在最好的情况下，我们要 马上找到的元素。
等运行在1欧米加。
>> 我是道格·劳埃德。
这是CS50。