首页 > 其他 > 详细

Search in Rotated Sorted Array II

时间:2015-04-17 11:13:28      阅读:165      评论:0      收藏:0      [点我收藏+]

跟1 差不多,就是多了个一旦相等,就挪边缘的条件, 参考http://blog.csdn.net/linhuanmars/article/details/20588511

public class Solution {
    public boolean search(int[] A, int target) {
        
        if(A==null || A.length==0)
            return false;
       
        int l = 0;
        int r = A.length-1;
        while(l<=r)
        {
            int m = (l+r)/2;
            if(target == A[m])
                return true;
            if(A[m]<A[r])
            {
                if(target>A[m] && target<=A[r])
                    l = m+1;
                else
                    r = m-1;
            }
            else if(A[m]>A[r])
            {
                if(target>=A[l] && target<A[m])
                    r = m-1;
                else
                    l = m+1;                    
            }
            else r--;
        }
        return false;
    }
} 

 

Search in Rotated Sorted Array II

原文:http://www.cnblogs.com/jiajiaxingxing/p/4434108.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!