美文网首页
对分查找

对分查找

作者: 灰s | 来源:发表于2017-11-19 22:33 被阅读0次
需求:给定一个整数X,求其在一个A0, A1,..., AN-1,后者已经预先排序并在内存中,求使得Ai = X的下标 i,如果X不再数据中,则返回 i = -1。
1.最明显的解法是从左到右扫描数据,其运行花费线性时间。
2.一个好的策略是验证X是否是居中的元素。如果是,则答案就找到了。如果X小于居中元素,那么我们可以应用同样的策略于居中元素左边已排序的子序列;如果大于,同理用于右边已排序的子序列。
int BinarySearch(const ElementType A[], ElementType X, int N) {
    int Low, Mid, High;
    Low = 0, High = N - 1;
    while(Low <= Hight) 
    {
        Mid = (Low + High) / 2;
        if (A[Mid] < X)
            Low = Mid + 1;
        else if (A[Mid] > X) 
            High = Mid - 1;
        else 
            return Mid;
    }
    return NotFound;
}

相关文章

  • 对分查找

    需求:给定一个整数X,求其在一个A0, A1,..., AN-1,后者已经预先排序并在内存中,求使得Ai = X的...

  • 算法 | 对分查找

    【算法思想】 首先将关键字与有序数组内处于中间位置的元素进行比较,如果中间位置上的元素内的数值与查找键不同,根据数...

  • 数据结构课程 第十二周 查找

    查找基本概念 线性表的查找 顺序查找(线性查找) 折半查找(二分或对分查找) 表中元素是有序的!(仅限于顺序存储结...

  • 对分查找、欧几里得、冥运算

    算法-对分查找(二分查找)C++实现验证x是否是居中的元素,如果是,则找到答案,如果小于居中元素,那么取左边已排序...

  • 对分教学

    今天学习张学新教授的对分课堂。利用心理学的方法,对课堂进行颠覆式的重新整合。 一,教师精讲, 有的内容来自张老师的...

  • 面对分离

    同学的串串店快开业了,早就约好今天去试锅。我已经一个星期没有见到儿子了,跟他打电话时,他很期待试锅,说下午...

  • 面对分离

    因为我的职业关系,所以常常会看到学生面对分离时的不舍与痛苦,我也会一遍遍地经历与一届届学生分离的过程。每届新高一的...

  • 十二对分解

  • 应对分娩

    第一产程。(宫口开1-10指,宫缩阶段。) 1、呼吸方法:闻花香,吹蜡烛。 慢式腹式呼吸,鼻吸闻花香,感受肚子36...

  • 对分课堂

    名词:对分课堂 诠释:它是一种基于心理学原理构建的教学模式,其核心理念是权责对分、责任共担,它的基本操作是把教学划...

网友评论

      本文标题:对分查找

      本文链接:https://www.haomeiwen.com/subject/ihzpvxtx.html