code: public static long sqrt(long x) {
  		long y = 0;
  		long b = (~Long.MAX_VALUE) >>> 1;
  		while (b > 0) {
  			if (x >= y + b) {
  				x -= y + b;
  				y >>= 1;
  				y += b;
  			} else {
  				y >>= 1;
  			}
  			b >>= 2;
  		}
  		return y;
  	}
docs: 平方根算法<br>
  推荐使用 {@link Math#sqrt(double)}
  
  @param x 值
  @return 平方根