[数据结构与算法] : 二分查找

Posted moon1992

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[数据结构与算法] : 二分查找相关的知识,希望对你有一定的参考价值。

 1 #include <stdio.h>
 2 
 3 #define NotFound -1;
 4 typedef int ElementType;
 5 
 6 int BinarySearch( const ElementType A[], ElementType X, int N )
 7 {
 8     int Low, Mid, High;
 9 
10     Low = 0; High = N-1;
11     while( Low <= High ) // 注意终止条件
12     {
13         Mid = (Low + High) / 2;
14         if( A[Mid] < X )
15             Low = Mid + 1;
16         else if( A[Mid] > X )
17             High = Mid - 1;
18         else
19             return Mid;
20     }
21     return NotFound;
22 }
23 
24 int main()
25 {
26     int arr[10] = {1, 2, 3, 5, 6, 7, 9, 10, 12, 15};
27     int sizeofA = sizeof(arr) / sizeof(arr[0]);
28     printf("BinarySearch returns %d\n", BinarySearch(arr, 9, sizeofA));
29     return 0;
30 }

 

以上是关于[数据结构与算法] : 二分查找的主要内容,如果未能解决你的问题,请参考以下文章

C言语二分查找(折半查找)算法及代码

Python数据结构与算法篇-- 二分查找与二分答案

算法——二分查找

数据结构与算法——查找算法-插值查找

数据结构与算法之-二分查找

数据结构与算法-查找算法