赞
踩
- 给你一个非负整数 x ,计算并返回 x 的 算术平方根 。
-
- 由于返回类型是整数,结果只保留 整数部分 ,小数部分将被 舍去 。
- 示例 1:
-
- 输入:x = 4
- 输出:2
- 示例 2:
-
- 输入:x = 8
- 输出:2
- 解释:8 的算术平方根是 2.82842..., 由于返回类型是整数,小数部分将被舍去。
- // 方法一
- class Solution {
- public int mySqrt(int x) {
- if (x == 1) {
- return 1;
- }
- long a = x;
- long left = 1;
- long right = a / 2;
- long mid = 0;
- while (left <= right) {
- mid = (left + right) / 2;
- if (mid * mid == a) {
- return (int) mid;
- } else if (mid * mid > a) {
- right = mid - 1;
- } else {
- left = mid + 1;
- }
- }
- return (int) right;
-
- }
- }

- class Solution {
- public int mySqrt(int x) {
- if (x == 1) {
- return 1;
- }
- double i = 0;
- int k = 0;
- double m = x;
- while ((i * i) <= m)
- i += 0.1;
- for (int j = 0; j < 10; j++) {
- i = (m / i + i) / 2;
- }
- return (int) i;
- }
- }

Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。