[抄题]:

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.

[暴力解法]:

时间分析:

空间分析:

[优化后]:

时间分析:

空间分析:

[奇葩输出条件]:

[奇葩corner case]:

[思维问题]:

不知道和二分法有何关系:

找到第一个/最后一个满足某个条件的位置/值,此乃二分法第二重境界

[一句话思路]:

套模板

[输入量]:空: 正常情况:特大:特小:程序里处理到的特殊情况:异常情况(不合法不合理的输入):

[画图]:

[一刷]:

有小数时定义为long型

[二刷]:

[三刷]:

[四刷]:

[五刷]:

[五分钟肉眼debug的结果]:

[总结]:

有小数时定义为long型

[复杂度]:Time complexity: O(lgn) Space complexity: O(1)

[英文数据结构或算法,为什么不用别的数据结构或算法]:

找到第一个/最后一个满足某个条件的位置/值,此乃二分法第二重境界

[关键模板化代码]:

[其他解法]:

[Follow Up]:

[LC给出的题目变变变]:

[代码风格] :

classSolution {public int mySqrt(intx) {//bs

long start = 1, end =x;while (start + 1

start=mid;

}else{

end=mid;

}

}//return end or start

if (end * end <=x) {return (int)end;

}return (int)start;

}

}

View Code

原文:https://www.cnblogs.com/immiao0319/p/8964816.html

c语言中sqrt取整,69. Sqrt(x) 求根号再取整相关推荐

  1. 一副从1到n的牌,每次从牌堆顶取一张放桌子上,再取一张放牌堆底,直到手中没牌,最后桌子上的牌是从1到n有序,设计程序,输入n,输出牌堆的顺序数组

    题目:一副从1到n的牌,每次从牌堆顶取一张放桌子上,再取一张放牌堆底,直到手上没牌,最后桌子上的牌是从1到n有序,设计程序,输入n,输出牌堆的顺序数组.(题目来源于一篇知乎上的文章) 思路: 在原牌堆 ...

  2. 面试题目: 一副从1到n的牌,每次从牌堆顶取一张放桌子上,再取一张放牌堆底,直到手中没牌。根据桌上的牌堆顺序,输出原先手中牌堆的顺序数组。

    面试题目: 一副从1到n的牌,每次从牌堆顶取一张放桌子上,再取一张放牌堆底,直到手中没牌.根据桌上的牌堆顺序,输出原先手中牌堆的顺序数组. import java.util.LinkedList; i ...

  3. 面试题:一副从1到n的牌,每次从牌堆顶取一张放桌子上,再取一张放牌堆底,直到手中没牌,最后桌子上的牌是从1到n有序,设计程序,输入n,输出牌堆的顺序数组

    面试题:一副从1到n的牌,每次从牌堆顶取一张放桌子上,再取一张放牌堆底,直到手中没牌,最后桌子上的牌是从1到n有序,设计程序,输入n,输出牌堆的顺序数组 思路如下:由题意可知存在两种操作,1.摸牌:2 ...

  4. 取模运算性质_求余、取模运算在RTOS中计算优先级的理解

    uCOS3中的部分源码: /* 置位优先级表中相应的位 */ void OS_PrioInsert (OS_PRIO prio) { CPU_DATA bit; CPU_DATA bit_nbr; O ...

  5. 在c语言中i10是什么意思啊,跪求!!!高手们帮忙

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 #include void main() { int i1,i2,i3,i4,i5,i6,i7,i8,i9,i10,i11,i12,i13,i14,i15 ...

  6. c语言整形符号位_基本整形型变量-在C语言中,整型常量与整型变量的区别是什么?举例...

    用什么关键字定义基本整型变量 int表示整型变量,long表示长整型变量,一般用int就足够了,例如 int a: int b = 2; 整型.短整型.长整型的区别是什么? 1.整型变量可以分为4类: ...

  7. 在c语言中2 什么作用是什么,在C语言中23%7=2是什么意思

    在C语言中23%7=2是什么意思以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 在C语言中23%7=2是什么意思 %是求 ...

  8. C语言中,strlen()函数与sizeof()运算符的区别以及用法区别

    C语言编程中,会频繁地对数据进行操作. 其中为了防止内存的非法占用,判断数据的长度或者变量的大小是非常有必要的操作. 最常用的就是strlen()函数或者sizeof()运算符. 那么strlen() ...

  9. c语言中sqrt函数_sqrt()函数以及C ++中的示例

    c语言中sqrt函数 C ++ sqrt()函数 (C++ sqrt() function) sqrt() function is a library function of cmath header ...

  10. c语言用int取整取了小数_[c语言取整算法]C语言中float型数据怎么取整数部分算法或取小数部分...

    C语言中float型数据怎么 取整数部分算法 或取小数部分 float福n=12.223; int x=(int)n; float y=n-(float)x; C语言有哪些取整函数? C语言有以下几种 ...

最新文章

  1. 共享文件服务器迁移,服务器共享文件夹迁移
  2. 迷惑!博士生发Nature造假,怕被调查扔掉实验室万元电脑
  3. AI 时代,为什么程序员很贵?
  4. 文件服务器 ftp服务器的优缺点,FTP服务器优缺点分析.doc
  5. 计算机图像处理之形状变换
  6. 计算机管理-磁盘管理中进行扩展卷操作,Win8系统如何进行磁盘管理?
  7. 2015校园O2O商业模式解析——从社交切入
  8. DIY信号发生器:运放实现三角波、方波发生器(详细参数说明)+multisim仿真
  9. 烂笔头笔记:Charles工具在Windows系统中闪退(无法打开)的问题修复
  10. Multisim应用举例实验
  11. 知识图谱与推荐系统之《Multi-Task Feature Learning for Knowledge Graph Enhanced Recommendation》MKR
  12. 大数据学习——相关资源
  13. Android libyuv应用系列(二)libyuv在Android中的使用
  14. C语言:围圈报号排序问题
  15. mac上Apk反编译工具合集整理与资源
  16. 计算机 网络属性打不开,右击我的电脑属性打不开解决方法
  17. C#连接Access2013
  18. 欧尼酱讲JVM(19)——执行引擎
  19. 多媒体一体机计算机打不开,多媒体一体机常见故障(电脑)
  20. 光环国际PMP:项目经理的“三边六拍”

热门文章

  1. 【机器学习|数学基础】Mathematics for Machine Learning系列之矩阵理论(20):方阵函数
  2. MSVAR能用MATLAB做吗,MS-VAR模型(MSVAR)建模心得(干货)
  3. c语言php环境搭建,c语言从入门到放弃php从入门到放弃系列-01php环境的搭建
  4. 做数据迁移差点累死的程序员有话要说----数据迁移经验分享
  5. python移动平均算法_移动平均算法
  6. OS篇-Bochs在Ubuntu下的安装教程
  7. 《Web程序设计》学习笔记1——web基础知识简述
  8. VUE之倒计时插件(超实用)
  9. 实验九 TCP 协议分析实验
  10. python 过采样算法_类不平衡数据分类准确率的提升算法smote过采样方法