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;
        }
  • 相关阅读:
    php date函数
    jquery AJAX教程
    Magento 批量修改订单状态为 Completed
    php 复习笔记 乱
    正则替换 php js
    magento订单状态修改
    换个心态继续走IT路
    神奇的HTML5,效果超炫,用Google chrome浏览
    PHP $_SERVER参数
    第六章 线程基础
  • 原文地址:https://www.cnblogs.com/zmyvszk/p/5494400.html
Copyright © 2011-2022 走看看