C#二分搜索算法

来源:互联网 发布:淘宝打电话说批发商 编辑:程序博客网 时间:2024/04/30 07:44
  1. class BinarySearch
  2. {
  3.     public int search(int[] A, int p, int q, int key)
  4.     {
  5.         int result = -1;
  6.         if (p >= q && key == A[p])
  7.         {
  8.                    result = p;
  9.         }
  10.         else
  11.         {
  12.             int k = (p+q)/2;
  13.             if (key == A[k]) 
  14.                    result = k;
  15.             else 
  16.                 result = (key < A[k]) ? search(A, p, k-1, key) : 
  17. search(A, k+1, q, key);
  18.         }
  19.         return result;
  20.     }
原创粉丝点击