二分查找一>寻找峰值
1.题目:
2.解析:
暴力遍历代码:O(N),由于该题数据很少所以可以通过
代码语言:javascript代码运行次数:0运行复制暴力遍历:O(N),由于该题数据很少所以可以通过
int index = 0;
for(int i = 1; i <= nums.length-1; i++) {
//某段区域内一直递增,更新就index
if(nums[i] > nums[index]) index = i;
}
//找到并且返回
return index;
二分查找:时间复杂度为 O(log n)
int left = 0, right = nums.length-1;
while(left < right){
int mid = left + (right - left) / 2;
if(nums[mid] > nums[mid+1]) right = mid;
if(nums[mid] < nums[mid+1]) left = mid+1;
}
return left;
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。 原始发表:2024-10-09,如有侵权请联系 cloudcommunity@tencent 删除遍历数据intreturn发布者:admin,转转请注明出处:http://www.yc00.com/web/1754958487a5221618.html
评论列表(0条)