zoukankan      html  css  js  c++  java
  • c# 二分查找

       // perform a binary search on the data
       public int BinarySearch( int searchElement )
       {  private int[] data;
          int low = 0; // low end of the search area
          int high = data.Length - 1; // high end of the search area
          int middle = ( low + high + 1 ) / 2; // middle element
          int location = -1; // return value; -1 if not found

          do // loop to search for element
          {
                    // if the element is found at the middle
             if ( searchElement == data[ middle ] )
                location = middle; // location is the current middle

             // middle element is too high
             else if ( searchElement < data[ middle ] )
                high = middle - 1; // eliminate the higher half
             else // middle element is too low
                low = middle + 1; // eliminate the lower half

             middle = ( low + high + 1 ) / 2; // recalculate the middle
          } while ( ( low <= high ) && ( location == -1 ) );

          return location; // return location of search key
       } // end method BinarySearch 

  • 相关阅读:
    第一天站立会议
    Sprint会议计划
    软件需求分析
    团队介绍
    再写行转列和列转行
    二十三种设计模式之:组合(Composite)模式(部分·整体模式)
    对于类和对象的认识
    对排序的认识
    设计模式分类
    二十三种设计模式之:适配器模式
  • 原文地址:https://www.cnblogs.com/encounter/p/2188825.html
Copyright © 2011-2022 走看看