69 x的平方根

2021-09-27 01:42:02 字數 943 閱讀 4968

題目描述:

實現int sqrt(int x)函式。

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

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

示例 1:

輸入: 4

輸出: 2

示例 2:

輸入: 8

輸出: 2

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

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

知識點:

二分法:mid=(left+right)/2

思路和**:

結果返回的是近似整數,考慮邊界值的選擇這裡需要注意右側邊界(n/2)+1

class

solution

:def

mysqrt

(self, x:

int)

->

int:

if x ==0:

# 考慮特殊值

return

0 left =

1 right = x

while left < right:

mid =

(left + right +1)

>>

1# if mid * mid > x: # 返回的是僅保留整數部分,必然有mid * mid <= x

# right = mid - 1

# else:

# left = mid

if mid * mid <= x:

left = mid

else

: right = mid -

1return left

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.由於返回型別是整數,小數部分將被捨去。思路 每...

69 x 的平方根

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