• 南北少卿
    2019-02-23
    老师,res=m,为什么要放在else{}里面呢?
     1
     7
  • 杨泽富
    2019-03-22
    在网上看过他写的牛顿迭代法那段代码,大神写代码的思路和普通人完全不一样
    
     1
  • Mason
    2018-11-15
    这一节很有意思
    
     1
  • meta-algorithmX
    2020-01-15
    solution 1: binary search
    time complexity $O(log^n)$
    ```Java
      float mSqrt(int x, double epsilon) {
        if (x < 0) return -1;
        if (x == 0 || x == 1) return x;

        float left = 0, right = x;
        while (left <= right) {
          float mid = left + (right - left) / 2;
          if (Math.abs(mid - x / mid) < epsilon) return mid;
          if (mid < x / mid) left = mid;
          if (mid > x / mid) right = mid;
        }

        return Float.NEGATIVE_INFINITY;
      }
    ```

    solution 2: Isaac newton iterative method
    time complexity $O(log^n * F(n))$
    http://en.citizendium.org/wiki/Newton%27s_method#Computational_complexity
    ```Java
      float sqrtNewton(int x, double epsilon) {
        if (x < 0) return Float.NaN;
        if (x == 0 || x == 1) return x;

        float iterativeResult = x;
        while (Math.abs(iterativeResult - x / iterativeResult) > epsilon / iterativeResult) {
          iterativeResult = (x / iterativeResult + iterativeResult) / 2;
        }
        return iterativeResult;
      }
    ```
    展开
    
    
  • witluo
    2019-12-03
    牛顿迭代法,我记得是研究生时候,数学分析中的
    
    
  • 陈志恒
    2019-09-27
    新思路:数学中迭代优化的角度,迭代逼近
    
    
  • 小青年
    2019-06-06
    js实现
    var mySqrt = function (x) {
        
        if (x === 0 || x === 1) return x
        
        let left = 1
        let right = x - 1
        let m
        let target
        let res
        
        while (left <= right) {
            m = Math.floor((left + right) / 2)
            target = Math.floor(x / m)
            if (target === m) {
                return m
            }
            if (target < m) {
                right = m - 1
            }
            if (target > m) {
                left = m + 1
                res = m
            }
        }
        
        return Math.floor(res)
    }
    展开
    
    
  • panda
    2019-03-29
    第二段牛顿法的代码不考虑r*r越界吗?
     1
    
  • jshadow
    2019-03-06
    好像没有考虑1开平方根的情况
    
    
  • 
    2018-12-31
    老师问下 为啥f(xn)=x^2n-y0 这里有困惑 求指点
    
    
我们在线,来聊聊吧