算法复习:二分查找

Posted dzzy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了算法复习:二分查找相关的知识,希望对你有一定的参考价值。

leedcode 69. x 的平方根

注意边界条件和判断条件

mid int存不下要用long long

long long mid=lower+(upper-lower)/2     取上界
long long mid=lower+(upper-lower+1)/2 取下界
技术图片
class Solution {
public:

    int mySqrt(int x)
    {
        int lower=1,upper=x;
        long long mid=lower+(upper-lower)/2;
        if(x==0)
            return 0;
        while(lower<mid)
        {
            if(mid*mid==x)
                return mid;
            if(mid*mid>x)
            {
                upper=mid;
                mid=lower+(upper-lower)/2;
                continue;
            }
            if(mid*mid<x)
            {
                lower=mid;
                mid=lower+(upper-lower)/2;
                continue;
            }
        }
        return mid;
    }
};
leedcode 69

 

以上是关于算法复习:二分查找的主要内容,如果未能解决你的问题,请参考以下文章

算法复习:二分查找

算法设计与分析期中考试复习:代码和经典题目 分治二分动态规划(未完待续)

复习一下数据结构——无序查找二分查找斐波那契分割查找

如何理解二分查找?生活中还能用来设计骗局?

2023数据结构考研复习-查找

2023数据结构考研复习-查找