leetcode刷题笔记(Golang)--69. Sqrt(x)

69. Sqrt(x)

Implement int sqrt(int x).

Compute and return the square root of x, where x is guaranteed to be a non-negative integer.

Since the return type is an integer, the decimal digits are truncated and only the integer part of the result is returned.

Example 1:

Input: 4
Output: 2
Example 2:

Input: 8
Output: 2
Explanation: The square root of 8 is 2.82842…, and since
the decimal part is truncated, 2 is returned.

func mySqrt(x int) int {
	l := 0
	r := x + 1
	for l < r {
		mid := l + (r-l)/2
		curr := mid * mid
		if curr == x {
			return mid
		} else if curr > x {
			r = mid
		} else {
			l = mid + 1
		}
	}
	return l - 1
}
发布了65 篇原创文章 · 获赞 0 · 访问量 363

猜你喜欢

转载自blog.csdn.net/weixin_44555304/article/details/104283097