zoukankan      html  css  js  c++  java
  • 顺序查找

    1、顺序查找的基本思想
         基本思想是:从表的一端开始,顺序扫描线性表,依次将扫描到的结点关键宇和给定值K相比较。若当前扫描到的结点关键字与K相等,则查找成功;若扫描结束后,仍未找到关键字等于K的结点,则查找失败。

    2、顺序查找的存储结构要求
      顺序查找方法既适用于线性表的顺序存储结构,也适用于线性表的链式存储结构(使用单链表作存储结构时,扫描必须从第一个结点开始)。

    3、基于顺序结构的顺序查找算法

    1)类型说明
      typedef struct{
        KeyType key;
        InfoType otherinfo; //此类型依赖于应用
       }NodeType;
      typedef NodeType SeqList[n+1]; //0号单元用作哨兵
    2)具体算法
      int SeqSearch(Seqlist R,KeyType K)
        { //在顺序表R[1..n]中顺序查找关键字为K的结点,
          //成功时返回找到的结点位置,失败时返回0
          int i;
          R[0].key=K; //设置哨兵
          for(i=n;R[i].key!=K;i--); //从表后往前找
          return i; //若i为0,表示查找失败,否则R[i]是要找的结点
        } //SeqSearch
    

    注意:
         监视哨设在高端的顺序查找【参见练习】

  • 相关阅读:
    web总结
    工作总结
    python积累
    学习地图
    position:absolute绝对定位解读
    利用C++ RAII技术自动回收堆内存
    C++封装常用对象和对头文件探索
    String.split()方法你可能不知道的一面
    动态内存分配(new)和释放(delete)
    C#实现的异步Socket服务器
  • 原文地址:https://www.cnblogs.com/liuwj/p/3407964.html
Copyright © 2011-2022 走看看