为了账号安全,请及时绑定邮箱和手机立即绑定

leetCode33搜索旋转排序数组

标签:
算法

class Solution {

public int search(int[] nums, int target) {

if(nums.length==0){

                return -1;

            }

            int left=0;

            int right=nums.length-1;

            int mid;

                while(left<right){

                     mid=left+(right-left)/2;

                     if(target==nums[mid]){

                         return mid;

                     }

                    if(nums[left]<=nums[mid]){

                        //前半部分

                        if(target>=nums[left]&&target<nums[mid]){

                            right=mid-1;

                        }else{

                            left=mid+1;

                        }

                    }else{

                        if(target<=nums[right]&&target>nums[mid]){

                            left=mid+1;

                        }else{

                            right=mid-1;

                        }

                    }

                }

                return -1;

}

}


点击查看更多内容
1人点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消