zoukankan      html  css  js  c++  java
  • 81. Search in Rotated Sorted Array II

        /*
         * 81. Search in Rotated Sorted Array II 
         * 2016-5-13 by Mingyang
         * 这就是I的升级版,所有思路一模一样
         * 1.如果右边sort,并且target比中间小,那么肯定在左边,
         * 如果A[mid] == A[high],那么high--,因为不能判断哪边是sorted
         * 如果A[mid]>A[high]那么左边sort,那么只需要看最左边和target的关系
         * 这里还需要注意的就是while (low <= high)一定需要等于符号
         */
        public boolean search2(int[] A, int target) {
            if (A == null || A.length == 0)
                return false;
            int low = 0;
            int high = A.length - 1;
            while (low <= high) {
                int mid = (low + high) / 2;
                if (target < A[mid]) {
                    if (A[mid] < A[high])// right side is sorted
                        high = mid - 1;// target must in left side
                    else if (A[mid] == A[high])
    // cannot tell right is sorted, move pointer high----这一部分就是多加出来的
                        high--;
                    else // left side is sorted
                      if (target < A[low])
                        low = mid + 1;
                      else
                        high = mid - 1;
                } else if (target > A[mid]) {
                    if (A[low] < A[mid])// left side is sorted
                        low = mid + 1;// target must in right side
                    else if (A[low] == A[mid])
    // cannot tell left is sorted, move pointer low----这一部分就是多加出来的
                        low++;
                    else // right side is sorted
                      if (target > A[high])
                        high = mid - 1;
                      else
                        low = mid + 1;
                } else
                    return true;
            }
            return false;
        }
  • 相关阅读:
    JQuery的Dom操作
    JQuer的简单应用
    JSBom联合Dom的应用
    Bom—浏览器对象模型
    正则表达式(其实就是预习)
    Js关于表单的事件应用
    JavaScript事件练习
    微信小程序实现微信登录
    Azure 数据资源管理器 -- 当 ADX 遇上 ML
    多快好省 -- Azure VMSS AI 推理篇
  • 原文地址:https://www.cnblogs.com/zmyvszk/p/5494400.html
Copyright © 2011-2022 走看看