C# - Binary Search Implementation


C# - Binary Search Implementation

CODE
using System; namespace SampleNS { class Program { static void Main(string[] args) { int[] numbers = new int[] { 1, 10, 99, 89, 35, 96, 6, 7, 100, 120, 55 }; int numberToSearch = 23; //Sort the array for (int i = 0; i < numbers.Length - 1; i++) { for (int j = i; j < numbers.Length; j++) { if (numbers[i] > numbers[j]) { int temp = numbers[i]; numbers[i] = numbers[j]; numbers[j] = temp; } } } int min = 0; int max = numbers.Length - 1; int indexOfTheNumberToSearch = -1; while (min <= max) { int mid = (min + max) / 2; if (numberToSearch == numbers[mid]) { indexOfTheNumberToSearch = mid; break; } else if (numberToSearch < numbers[mid]) max = mid - 1; else min = mid + 1; } if (indexOfTheNumberToSearch == -1) Console.WriteLine("The number {0} is not present in the array.", numberToSearch); else Console.WriteLine("The number {0} is present in the array.", numberToSearch); Console.ReadKey(); } } }

Comments