leetcode 69.x平方根(Javaのバイナリサーチ簡単)

https://leetcode-cn.com/problems/sqrtx/

INT SQRT(INT x)関数、与えられた数、SQRT(X)と一部が保持整数を求めるを達成します。

 

バイナリ検索、<Lので、ループの外場合、Hを返し、ループの外に、即ち、SQRT(x)が整数でない=さh、> H、この質問は、整数部分のみを残す必要L = 1、H = xは、L決定されるように、丸められていません。

クラスソリューション{
     公共 のint mySqrt(INT X){
         場合(X <= 1)に戻り、X。
        int型、L = 1、時間=のX。
        一方、(L <= H){
             int型ミッド= 1 +(HL)/ 2 int型の SQRT = X / ミッド。
            場合(SQRT == MID){
                 戻り中間と、
            } 
            そう であれば(SQRT < MID){ 
                H =半ば1 
            } 
            { 
                L=ミッド+ 1 ; 
            } 
        } 
        戻りH; 
    } 
}

 

おすすめ

転載: www.cnblogs.com/y1040511302/p/11569004.html