线性(顺序)查找算法介绍与C语言/C++代码实现

2022-07-1716:53:54数据结构与算法Comments1,006 views字数 678阅读模式

1. 查找算法文章源自菜鸟学院-https://www.cainiaoxueyuan.com/suanfa/25218.html

查找算法是指:从一些数据之中,找到一个特殊的数据的实现方法。查找算法与遍历有极高的相似性,唯一的不同就是查找算法可能并不一定会将每一个数据都进行访问,有些查找算法如二分查找等,并不需要完全访问所有的数据。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/suanfa/25218.html

查找算法适用于很多场景,最典型的应用场景就是已知次品商品的特征,如何从一堆商品当中查找出这些次品。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/suanfa/25218.html

2. 顺序查找算法简介文章源自菜鸟学院-https://www.cainiaoxueyuan.com/suanfa/25218.html

顺序查找算法是最简单的查找算法,其意思为:线性的从一个端点开始,将所有的数据依次访问,并求得所需要查找到的数据的位置,此时,线性查找可以称呼为遍历。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/suanfa/25218.html

3. 代码实现文章源自菜鸟学院-https://www.cainiaoxueyuan.com/suanfa/25218.html

一个最简单的例题:有6个商品,他们每一个商品的重量都是10,但其中有一个商品是次品,他的重量只有9,请设计代码将其找出,为了简化内容,我们直接利用数组Shangping存储内容。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/suanfa/25218.html

#include<iosteam>
using namespace std;
int main(){
    int Shangping[6]={10,10,9,10,10,10}
    for(int i=0;i<6;i++){
        if(Shangping[i]==9){
            printf("找到次品,他的位置在:%d",i+1);
        }
    }
    return 0;
}

可以见到,本题中利用一层for循环即可找寻到目标,这相当容易理解,即使映射到链表中进行线性的查找依旧很容易理解,而在接下来的章节内,我们将依次学习折半查找(又名二分查找)以及分块查找等静态查找方法,也会讲解二叉排序树和平衡二叉树这些利用数据结构进行操作的动态查找方式。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/suanfa/25218.html

  • 本站内容整理自互联网,仅提供信息存储空间服务,以方便学习之用。如对文章、图片、字体等版权有疑问,请在下方留言,管理员看到后,将第一时间进行处理。
  • 转载请务必保留本文链接:https://www.cainiaoxueyuan.com/suanfa/25218.html

Comment

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定