1. /**
    2. * leetcode #69 x的平方根
    3. * 计算并返回 x 的平方根,其中 x 是非负整数。
    4. * 由于返回类型是整数,结果只保留整数的部分,小数部分将被舍去
    5. *
    6. *
    7. * 示例 1
    8. * 输入: 4
    9. * 输出: 2
    10. *
    11. * 示例 2
    12. * 输入: 8
    13. * 输出: 2
    14. * 说明: 8 的平方根是 2.82842...,
    15. * 由于返回类型是整数,小数部分将被舍去
    16. *
    17. * **/
    18. function mySqrt(x) {
    19. let l = 0, h = x;
    20. let res = 0;
    21. while (l <= h) {
    22. let m = Math.floor((l + h) / 2);
    23. if (m * m > x) {
    24. h = m - 1;
    25. } else {
    26. res = m;
    27. l = m + 1;
    28. }
    29. }
    30. return res
    31. }