力扣 题目69- x 的平方根
题目
题解
二分搜索法 但是不同的是我们每次要与中间的平方比较
代码

1 #include<iostream> 2 using namespace std; 3 class Solution { 4 public: 5 int mySqrt(int x) { 6 if (x == 1) { 7 return 1; 8 } 9 int min = 0; 10 int max = x; 11 //如果max和min交叉 12 while (max - min > 1) 13 { 14 //更新中间 15 int middle = (min + max) / 2; 16 //防止int 溢出 17 if (x / middle < middle) { 18 max = middle; 19 } 20 else 21 { 22 min = middle; 23 } 24 } 25 return min; 26 } 27 }; 28 29 int main() { 30 Solution sol; 31 INT_MAX; 32 int result=sol.mySqrt(2147395599); 33 cout << result << endl; 34 35 }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统