首页 > Windows开发 > 详细

二分搜索-C#

时间:2019-12-23 09:57:10      阅读:80      评论:0      收藏:0      [点我收藏+]

static void Main(string[] args)
{
  int[] array = { 10, 20, 30, 40, 50, 60, 70, 80, 90 };
  int result = BinarySearch(array, 55);
  Console.WriteLine(result);
}

只能查找有序的线性表
static int BinarySearch(int[] array, int key)
{
  int left = 0;
  int right = array.Length - 1;
  while (left <= right)
  {
    if (key == array[left])
      return array[left];
    if (key == array[right])
      return array[right];

    int middle = (left + right) / 2;
    if (key == array[middle])
      return array[middle];
    else if (key > array[middle])
      left = middle + 1;
    else
      right = middle - 1;
  }
  return -1;
}

二分搜索-C#

原文:https://www.cnblogs.com/LZHOO97/p/12081887.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!