查找:一个个找
约 8 分钟
最朴素的查找就是从头到尾一个个比,找到就停,这叫顺序查找。像在一叠没排过的照片里找某一张,只能一张张翻。它的好处是简单、数据乱着也能用;坏处是数据一多就慢——最坏情况(要找的在最后,或根本不存在)得看完全部。
#include <iostream>
using namespace std;
int main() {
int a[6] = {5, 2, 8, 1, 9, 3}, n = 6, target = 9;
int pos = -1;
for (int i = 0; i < n; i++)
if (a[i] == target) { pos = i; break; }
if (pos != -1) cout << "找到,在第 " << pos << " 位";
else cout << "没找到";
}
一万个数最坏要比一万次。别忘了用 break:找到后不停下来会白白比完剩下的;也要用 pos = -1 表示"没找到",不能只输出下标。
小纸条
一万个数里找一个,最坏要比几次?
登录 后可看答案