【剑指Offer】在排序数组中查找数字 I
发布日期:2022-02-10 08:55:18
浏览次数:29
分类:技术文章
本文共 822 字,大约阅读时间需要 2 分钟。
题目
统计一个数字在排序数组中出现的次数。
思路
两次二分,先找右边界,再找左边界,最后答案就是右-左-1
代码
class Solution {public: int search(vector & nums, int target) { int len = nums.size(); int i = 0; int j = len - 1; int m = 0; while(i <= j){ m = (i + j) / 2; if(nums[m] < target){ i = m+1; }else if(nums[m] > target){ j = m-1; }else{ i = m + 1; } } int right = i; i = 0; j = len - 1; m = 0; while(i <= j){ m = (i + j) / 2; if(nums[m] < target){ i = m+1; }else if(nums[m] > target){ j = m-1; }else{ j = m - 1; } } int left = j; return right - left - 1; }};
转载地址:https://blog.csdn.net/hanmin822/article/details/105972833 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
路过按个爪印,很不错,赞一个!
[***.219.124.196]2024年04月17日 06时08分14秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
Lua(十四)——元表
2019-04-27
Lua(十五)——协同程序
2019-04-27
Lua(十六)——文件
2019-04-27
Lua(十七)——面向对象
2019-04-27
Lua(十八)——错误处理,垃圾回收
2019-04-27
xLua(一)——介绍
2019-04-27
xLua(二)——下载
2019-04-27
Unity中实现解析Json文件
2019-04-27
Unity自带Json解析库——JsonUtility
2019-04-27
Unity中使用ViedoPlayer操作视频文件
2019-04-27
JAVA Freemarker(9)---常见语法大全
2019-04-27
Java MyBatis(1)--- Generator 详解
2019-04-27
Java MyBatis(2)--- generatorConfig.xml详解与运行
2019-04-27
VueJS(5)---初步练习(5题)
2019-04-27
mysql(3)-- 修改root密码命令小结
2019-04-27
JQuery(3)--冒泡效果
2019-04-27
异常(2)-- UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/项目包名
2019-04-27
Android软键盘(1)---输入法界面管理(打开/关闭/状态获取)
2019-04-27
Android动态设置view的高度宽度
2019-04-27