Search in Rotated Sorted Array II
来源:互联网 发布:淘宝联盟导购推广名称 编辑:程序博客网 时间:2024/06/05 19:10
Follow up for "Search in Rotated Sorted Array":
What if duplicates are allowed?
Would this affect the run-time complexity? How and why?
Write a function to determine if a given target is in the array.
和上一题一模一样,唯一要注意的就是如果三个点都相等:A[m] == A[l] == A[h],那么就线性搜索:public boolean search(int[] A, int target) { return helper(A, target, 0, A.length-1); } boolean helper(int[] A, int target, int l, int h) { if (l > h) { return false; } int m = l + (h-l)/2; if (A[m] == target) { return true; } if (A[l] == A[m] && A[m] == A[h]) { for (int i = l; i <= h; i++) { if (A[i] == target) { return true; } } return false; } if (A[l] <= A[m]) { // pivot is in the right if (A[l] <= target && target < A[m]) { return helper(A, target, l, m-1); } else { return helper(A, target, m+1, h); } } else { // pivot is in the left if (A[m] < target && target <= A[h]) { return helper(A, target, m+1, h); } else { return helper(A, target, l, m-1); } } }
0 0
- LeetCode: Search in Rotated Sorted Array II
- Search in Rotated Sorted Array II
- LeetCode Search in Rotated Sorted Array II
- LeetCode : Search in Rotated Sorted Array II
- [LeetCode] Search in Rotated Sorted Array II
- [Leetcode] Search in Rotated Sorted Array II
- Search in Rotated Sorted Array II
- [leetcode] Search in Rotated Sorted Array II
- [LeetCode]Search in Rotated Sorted Array II
- Search in Rotated Sorted Array II
- Search in Rotated Sorted Array II
- Search in Rotated Sorted Array II
- Search in Rotated Sorted Array II
- [leetcode] Search in Rotated Sorted Array II
- LeetCode-Search in Rotated Sorted Array II
- Search in Rotated Sorted Array II
- LeetCode - Search in Rotated Sorted Array II
- 【Leetcode】Search in Rotated Sorted Array II
- android网络编程 -- HTTP通信(02) Android HTTP 通信 [附源码分析]
- LinkedList与ArrayList的区别
- Qt Model/View view单元格值改变其相应的背景颜色也变
- 消息 208,级别 16,状态 1,第 1 行 对象名 '' 无效。
- 怎样用SQL Server 2008 SQL语句将Excel数据导入到数据库里指定的表里面
- Search in Rotated Sorted Array II
- android DefaultHttpClient 超时
- bitset的使用方法
- 系统学习数字图像处理之灰度变换和空域滤波
- 深刻理解属性、getter及setter
- leetcode-Reverse Integer
- Notepad++如何真正启用主动缩进
- 《Linux设备驱动开发详解》源码——export
- Java的编解码