實現int sqrt(int x)
函式。
計算並返回 x 的平方根,其中 x 是非負整數。
由於返回型別是整數,結果只保留整數的部分,小數部分將被捨去。
示例 1:
輸入:4
輸出:2
示例 2:
輸入:8
輸出:2
說明:8 的平方根是 2.82842...,
由於返回型別是整數,小數部分將被捨去。
這個題有好多種解法,先提交一種思路最簡單也是最笨的辦法,迴圈求解:要注意大於等於和小於(不等於)的條件
class solution:
def mysqrt(self, x: int) -> int:
a=0while a <= x:
if x >= (a*a) and x < (a+1)*(a+1) :
break
else :
a+=1
return a
偷懶的辦法,竟然可以通過測試,看來leetcode沒有限制使用庫函式,我也是服了:
return int(pow(x,1/2))
或者 :
return int(x**0.5)
二分法
牛頓迭代法
leetcode刷題 開始篇
第一道題 reverse words in a string.也就是說翻轉乙個字串的單詞。例如輸入為 hello world,it suck but i love it.輸出為 it love it but suck it world,hello 基本思路為 首先進行整個字串的reverse。然後對...
LeetCode刷題 演算法篇
暴力解法 class solution def twosum self,nums list int target int list int i 0 while i j i 1 while j if nums i nums j target return i,j j 1i 1 return none ...
leetcode刷題 鍊錶篇
class solution return result class solution class solution return cura 注 思路 相交節點到尾部的節點數是一樣的,所以當cura遍歷到尾部時,再從headb開始遍歷,同當curb遍歷到尾部時,再從heada開始遍歷,他們指標相遇時...