Программа Бинарного поиска - C#
Формулировка задачи:
Написать программу бинарного поиска на C#.Любую простую
Решение задачи: «Программа Бинарного поиска»
textual
Листинг программы
public static int? BinarySearch<T>(T[] array, T key)
{
return BinarySearch(array, 0, array.Length, key);
}
public static int? BinarySearch<T>(T[] array, int left, int right, T key) where T : IComparable<T>
{
while (right >= left)
{
int middle = left + (right - left) / 2;
int comp = array[middle].CompareTo(key);
if (comp > 0)
{
right = middle - 1;
}
else if (comp < 0)
{
left = middle + 1;
}
else
{
return middle;
}
}
return null;
}