x的平方根

2021-08-15 20:29:09 字數 557 閱讀 1173

題目三十九:

實現int sqrt(int x)函式,計算並返回 x 的平方根。

您在真實的面試中是否遇到過這個題?

yes

樣例sqrt(3) = 1

sqrt(4) = 2

sqrt(5) = 2

sqrt(10) = 3 挑戰

o(log(x))

**:

class solution 

if(i*ix)

return i;

if(i*i==x)

return i;}}

};

思路:減少時間消耗,在i*i用flag和j記錄i的值,i=i*i,如果出現i*i>x則i=j,讓i的值返回到前乙個i的值,同時更改flag,此後i=i+1;直到出現

i*ix或

i*i==x為止。

由於有i=i*i存在,所以減少了時間的消耗,之前逐個遍歷導致時間超出限制,這是我想出的處理方法。但是要注意i*i可能超出int的範圍,所以i定義為long long int型變數。

x的平方根

實現 int sqrt int x 函式。計算並返回 x 的平方根,其中 x 是非負整數。看到這個題,當時想到了利用二分法,查詢x的平方根。寫出了如下 public int mysqrt int x else if m m x m m 0 else return l 但是這個方法並不適用大數,因為m...

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