- 浏览: 176079 次
- 性别:
- 来自: 济南
文章分类
最新评论
Implement int sqrt(int x).
Compute and return the square root of x.
一道设计题,实现sqrt方法,也就是开平方根。我们可以用二分法来做,设定left 为1, right为x, 用x / mid 和mid来进行比较(之所以用x / mid与mid比较,而不用x与mid*mid比较是因为mid*mid可能溢出,用x / mid可以防止溢出),如果x /mid 等于mid,就返回mid; 如果x /mid 小于mid,就让right = mid - 1; 如果x /mid 大于mid,就让left = mid + 1;直到left > right程序终止,这是left - 1恰好是我们要找的答案,返回就可以了。代码如下:
Compute and return the square root of x.
一道设计题,实现sqrt方法,也就是开平方根。我们可以用二分法来做,设定left 为1, right为x, 用x / mid 和mid来进行比较(之所以用x / mid与mid比较,而不用x与mid*mid比较是因为mid*mid可能溢出,用x / mid可以防止溢出),如果x /mid 等于mid,就返回mid; 如果x /mid 小于mid,就让right = mid - 1; 如果x /mid 大于mid,就让left = mid + 1;直到left > right程序终止,这是left - 1恰好是我们要找的答案,返回就可以了。代码如下:
public class Solution { public int mySqrt(int x) { if(x <= 1) return x; int l = 1; int r = x; while(l <= r) { int mid = l + (r - l) / 2; if(x / mid == mid) return mid; if(x / mid > mid) { l = mid + 1; } else { r = mid - 1; } } return l - 1; } }
发表评论
-
498. Diagonal Traverse
2019-11-15 13:52 234Given a matrix of M x N eleme ... -
496 Next Greater Element I
2019-11-14 13:50 237You are given two arrays (witho ... -
Word Break II
2016-03-09 03:15 351Given a string s and a dictiona ... -
Insert Interval
2016-03-08 02:11 344Given a set of non-overlapping ... -
Merge Intervals
2016-03-07 05:25 468Given a collection of intervals ... -
Merge k Sorted Lists
2016-03-07 04:03 532Merge k sorted linked lists and ... -
Multiply Strings
2016-03-06 07:27 440Given two numbers represented a ... -
N-Queens II
2016-03-06 03:06 628Follow up for N-Queens problem. ... -
N-Queens
2016-03-06 02:47 439The n-queens puzzle is the prob ... -
First Missing Positive
2016-03-05 03:09 401Given an unsorted integer array ... -
Spiral Matrix
2016-03-04 03:39 524Given a matrix of m x n element ... -
Trapping Rain Water
2016-03-04 02:54 546Given n non-negative integers r ... -
Repeated DNA Sequences
2016-03-03 03:10 383All DNA is composed of a series ... -
Increasing Triplet Subsequence
2016-03-02 02:48 874Given an unsorted array return ... -
Maximum Product of Word Lengths
2016-03-02 01:56 894Given a string array words, fin ... -
LRU Cache
2016-02-29 10:37 568Design and implement a data str ... -
Super Ugly Number
2016-02-29 07:07 616Write a program to find the nth ... -
Longest Increasing Path in a Matrix
2016-02-29 05:56 775Given an integer matrix, find t ... -
Coin Change
2016-02-29 04:39 748You are given coins of differen ... -
Minimum Height Trees
2016-02-29 04:11 638For a undirected graph with tre ...
相关推荐
求x=sqrt(a),迭代公式为x1=1/2(x0+a/x0).x0为任意数。
# 实现 int sqrt(int x) 函数 # 计算并返回 x 的平方根,其中 x 是非负整数 # 由于返回类型是整数,结果只保留整数的部分,小数部分将被舍去 # 示例 1: # 输入: 4 # 输出: 2 # 示例 2: # 输入: 8 # 输出: 2 #...
平方根函数sqrt(int x)(java代码).docx
摘要:编码重点是在启发式解决方案的C语言中使用p系列评估f(x)= sqrt(x)的实现。 所有这些都是针对大学工程师项目的。 一些启发代码的系列(实现这一近似的系列) 为了系列: (I)比Sávio教授给我们的剧集...
通过 CORDIC 算法计算 sqrt (x^2 + y^2) 和 atan (y/x)。 此函数执行 9 次迭代
示该代数式的C语言表达式是 A)sqrt(abs(n^x+e^x)) B) sqrt(fabs(pow(n,x)+pow(x,e))) C)sqrt(fabs(pow(n,x)+exp(x))) D) sqrt(fabs(pow(x,n)+exp(x))) (18)设有定义:int k=0;,以下选项的四个表达式中与其他三个...
(sqrt x)-平方根,如果可能的话精确 (exact-integer-sqrt k)返回平方根的底数和“余数” 更多文档字符串文档。 发布和依赖项信息 最新稳定版本:0.0.4 依赖项信息: org.clojure/math.numeric-tower { :mvn/...
c语言sqrt函数的用法 sqrt函数用于计算一个非负实数的平方根。 sqrt的函数原型: 在VC6.0中的math.h头文件的函数原型为double sqrt(double); ... result = sqrt(x); //result*result = x printf(Th
sqrt(x [,opts]) 计算元素级主。 x可以是number , array ,typed array或matrix 。 var matrix = require ( 'dstructs-matrix' ) ,data ,mat ,out ,i ;out = sqrt ( 9 ) ;// returns 3out = sqrt ( - 9 ) ;// ...
sqrt()方法返回x的平方根(x>0)。 语法 以下是sqrt()方法的语法: import math math.sqrt( x ) 注意:此函数是无法直接访问的,所以我们需要导入math模块,然后需要用math的静态对象来调用这个函数。 参数 x — 这...
二分法跳出来的时候一定是在平方根附近的,最后判断一下如果平方大于x的话就返回它前面的一个值,否则就正常返回就行了时间复杂度:O(logx)空间复杂度:O(1)牛
这个可以完成一般的计算功能,我只是我们能共同学好C#,希望这个计算器对你有用!!!!
2 \ right)=-\ Delta \ Sigma \ left(x,{Q} ^ 2 \ right)\ sim {\ left(\ frac {1} {x} \ right)} ^ {\ frac {4} {\ sqrt {3}} \ kern0.5em \ sqrt {\ frac {\ alpha_s \ kern0.5em {N} _c} {2 \ pi}}},$$ 1b...
本文实例讲述了go语言实现sqrt的方法。分享给大家供大家参考。具体实现方法如下: 代码如下:package mymath import “math” func InvSqrt(x float32) float32 { var xhalf float32 = 0.5*x // get bits for ...
8 GeV / c范围内的包含电荷共轭态的包含截面为σpp→D 0 X = 1004±3±54μb,σpp →D + X = 402±2±30μb,σpp→D s + X = 170±4±16μb,σpp→D ∗ + X = 421±5±36μb,$$ \开始{ 数组} {l} \ sigma \ left...
sqrt(x):求根号x的值 主代码: int x; double ans; cin>>x; ans=sqrt(x);//将sqrt(x)的值赋给ans cout; 输入:36 输出:6 注意:如果要用sqrt函数需在第一行加入下面代码: #include 或者将#include改成下面代码: ...
python 基础 python math库的使用,展示了math库中常用的函数并给出python2的示例 常用函数1 ceil(x), floor(x), trunc(x):注意正负数的区别 copysign(x, y):取符号 ...hypot(x, y): sqrt(x*x + y*y)
这个更新的程序里,还有代码说明,这样能大家很容易懂!!!,还增加一个清除错误的键,希望大家支持!!!!
一般方程为x²+y²+ax=a*sqrt(x²+y²) 和 x²+y²-ax=a*sqrt(x²+y²) 在极坐标系中的方程为: ρ(θ)=2r(1+/-cosθ) P(θ)=2r(1+/-sinθ) 其中r是圆的半径。曲线的尖点位于(r,0)但是不好用,
Matlab代码sqrt ASU数学实验室 介绍 数学库软件。 类似于Matlab,Octave和类似工具 规格 使用C / C ++ linux下的开发 生产到linux服务器(Centos 6.7) 任何C / C ++ IDE都可以在linux下运行。 g ++编译器,需要...