这段代码演示了C#使用二分法快速搜索数组
using System;
 
class ArrayBinarySearch
{
   public static void Main()
   {
      int[] ints = {0, 10, 100, 1000, 1000000 };
      Console.WriteLine ("Array indices and elements: ");
      for (int i = 0; i < ints.Length; i++ )
      {
         Console.Write("[{0}]={1, -5}", i, ints[i]);
      }
      Console.WriteLine();
      FindObject  (ints, 25);
      FindObject  (ints, 1000);
      FindObject  (ints, 2000000);
   }
   
   public static void FindObject  (Array array, Object o)
   {
      int index = Array.BinarySearch (array, 0, array.Length, o);
      Console.WriteLine();
      if (index > 0 )
      {
         Console.WriteLine ("Object: {0} found at [{1}]", o, index );
      }
      else if (~index == array.Length )
      {
         Console.WriteLine ("Object: {0} not found. " 
            + "No array object has a greater value." , o);
         Console.WriteLine ();
      }
      else
      {
        Console.WriteLine ("Object: {0} not found. " 
           + "Next larger object found at [{1}].", o, ~index);
      }
   }
}
