x的平方根
来源:互联网 发布:赫鲁晓夫知乎 编辑:程序博客网 时间:2024/04/27 15:00
实现 int sqrt(int x) 函数,计算并返回 x 的平方根。
转换一下思路,还是二分查找问题:
寻找ans * ans <= x的最后一个int型ans.
此处需要注意一点就是 mid * mid 可能会溢出,这里采取的是将mid除到等号的右边。当然是用long型也可以,最后再强转一下。
public int sqrt(int x) { if (x <= 0) { return 0; } int start = 1; int end = x; while (start + 1 < end) { int mid = start + (end - start) / 2; if (mid == x / mid) { start = mid; } else if (mid < x / mid) { start = mid; } else { end = mid; } } if (end <= x / end) { return end; } else { return start; } }
0 0
- X的平方根
- X的平方根
- x的平方根
- 题目 :x的平方根
- x的平方根
- LintCode-x的平方根
- LintCode x的平方根
- x的平方根
- LintCode: x的平方根
- x的平方根
- x的平方根
- LintCode:x的平方根
- 计蒜客 X的平方根
- 求x的平方根
- lintcode:x的平方根
- 求x的平方根
- x的平方根
- x的平方根
- 进程 vs 线程
- 5W1H分析法
- UVA156-5.4-Ananagrams-映射(map)
- TCP头部的ACK与SEQ
- JSP属性范围
- x的平方根
- Unbutu 14.04 安装docker 官方翻译
- 大文件分块上传第二弹(秒传、断点续传)
- linux 虚拟内存地址转化成物理内存地址
- [php] 正则表达式
- Linux Ubuntu安装配置JRE和Tomcat
- 0001-HTML中上一级目录、上上级目录、下一级目录、下下级目录中的页面的相互引用
- 常用css
- 故障排查实战案例——某电器ERP系统日志暴增