本文共 521 字,大约阅读时间需要 1 分钟。
前面写过二分法使用的是递归手法,然后该节才有不递归的方式执行。
二分法的时间复杂度为log(2)n。空间复杂度为:1。
代码:
static void Main(string[] args){ int[] arr = {1,3,8,10,11,67,100 }; int index= BinarySearch(arr,8); Console.WriteLine("查询出的下标索引为:"+index);//2 Console.ReadKey();}public static int BinarySearch(int[] arr,int target){ int left = 0; int right = arr.Length - 1; while (right>left) { var mid = (left + right) / 2; if (arr[mid] == target) { return mid; } else if (arr[mid] > target) { right = mid + 1; } else { left = mid - 1; } } return -1;}
转载地址:http://qoskz.baihongyu.com/