二分算法

9 天前(已编辑)

二分算法

一. 算法模板

int binarySearch (int l, int r) {
  while(l < r){
    int mid = l + r >> 1;
    if(check(mid)) r = mid;
    else l = mid + 1;
  }

  return l;
}

当更新 l 的时候需要加 1

int binarySearch (int l, int r) {
  while(l < r){
    int mid = l + r + 1 >> 1;
    if(check(mid)) l = mid;
    else r = mid - 1;
  }

  return l;
}

使用社交账号登录

  • Loading...
  • Loading...
  • Loading...
  • Loading...
  • Loading...