leetcode 线性表
2015-08-25 22:36
295 查看
class Solution { public: int search(vector<int>& nums, int target) { int n = nums.size(); int first = 0, last = n - 1; while(first <= last){ int mid = (first + last) / 2; if(nums[mid] == target) return mid; if(nums[mid] >= nums[first]){ if(nums[mid] > target && nums[first] <= target) last = mid - 1; else first = mid + 1; } else{ if(nums[mid] < target && target <= nums[last]) first = mid + 1; else last = mid - 1; } } return -1; } };
class Solution { public: bool search(vector<int>& nums, int target) { int n = nums.size(); int first = 0, last = n - 1; while(first <= last){ int mid = (first + last) / 2; if(nums[mid] == target) return true; if(nums[mid] > nums[first]){ if(nums[mid] > target && nums[first] <= target) last = mid - 1; else first = mid + 1; } else if(nums[mid] < nums[first]){ if(target <= nums[last] && target > nums[mid]) first = mid + 1; else last = mid - 1; } else ++first; } return false; } };
相关文章推荐
- 质数筛 nbut1454 Lux
- 避免重复
- 分布式系统的特点以及设计理念
- group by rollup用法
- 排序算法
- UI_UIImageViw(图片)
- 【一些事晚报】互联网行业那些土豪岗位工资有多高
- Eclipse环境下的Python编程
- 锤子---坚果智能手机发布观感
- 现代心理与教育统计学 第一章
- 如何让div水平垂直居中
- [未完成][知识点]动态规划优化初步
- 2015 Multi-University Training Contest 10 hdu 5406 CRB and Apple
- 公有云选择
- [268]Missing Number
- Python源码分析2 - 一个简单的Python程序的执行
- 机房收费系统之结账
- VS2008 MFC内部工作原理
- bzoj-3011 Running Away From the Barn
- 前端代码异常日志收集与监控