在学习LIS的O(nlogn)的算法时看到了二分法求下界的概念,所以回白书学习了一下
在有序表中查找元素时经常用到二分法,普通的二分查找很简单,就是不断改变区间。二分查找只适用于有序数列,时间复杂度为O(nlogn)
二分查找(迭代实现):
int bsearch(int *A, int x, int y, int v)
{
int m;
while (x < y)
{
m = x + (y - x) / 2;
if (A[m] == v)
return m;
else if (A[m]>v)
y = m;
else
x = m +