leetcode question69 x的平方根

2021-09-01 13:23:52 字數 843 閱讀 4925

實現 int sqrt(int x) 函式。

計算並返回 x 的平方根,其中 x 是非負整數。

由於返回型別是整數,結果只保留整數的部分,小數部分將被捨去。

示例 1:

輸入: 4

輸出: 2

示例 2:

輸入: 8

輸出: 2

說明: 8 的平方根是 2.82842…,

由於返回型別是整數,小數部分將被捨去。

解法1

遍歷1到x/2的數,注意判斷是不要用 「i*i == x」 這種,因為會溢位。

解法2在解法1的基礎上調整為二分查詢法,降低時間複雜度

解法3解法1

class solution 

int halfx = x / 2;

int ret = 0;

for(int i = 1; i <= halfx; ++ i)

}return ret;

}}

解法2
class solution 

int ret = 0;

int start = 0;

int end = x;

while(start < end)

return end - 1;

}}

解法3
class solution 

long ret = (long)x;

while(ret > x / ret)

return (int)ret;

}}

Python LeetCode 69 x的平方根

實現 int sqrt int x 函式。計算並返回 x 的平方根,其中 x 是非負整數。由於返回型別是整數,結果只保留整數的部分,小數部分將被捨去。示例 1 輸入 4 輸出 2 示例 2 輸入 8 輸出 2 說明 8 的平方根是 2.82842 由於返回型別是整數,小數部分將被捨去。solutio...

69 x的平方根

一 題目 實現int sqrt int x 函式。計算並返回 x 的平方根,其中 x 是非負整數。由於返回型別是整數,結果只保留整數的部分,小數部分將被捨去。示例 1 輸入 4輸出 2示例 2 輸入 8輸出 2說明 8 的平方根是 2.82842.由於返回型別是整數,小數部分將被捨去。二 思路 採用...

69 x的平方根

題目描述 實現int sqrt int x 函式。計算並返回x的平方根,其中x 是非負整數。由於返回型別是整數,結果只保留整數的部分,小數部分將被捨去。示例 1 輸入 4 輸出 2 示例 2 輸入 8 輸出 2 說明 8 的平方根是 2.82842 由於返回型別是整數,小數部分將被捨去。知識點 二分...