Binary Search
o0Helloworld0o
怕是要翻水水哦
展开
-
平方根/完全平方数
求非负整数x的平方根,向下取整原创 2018-07-27 19:26:46 · 681 阅读 · 0 评论 -
数字在排序数组中出现的次数
Leetcode 34. Find First and Last Position of Element in Sorted Array 在一个排序的数组nums中,返回target第一次和最后一次出现的位置 如果target不存在,返回[-1, -1] class Solution { public: vector<int> searchRange(vector&l...原创 2018-07-27 19:52:19 · 161 阅读 · 0 评论 -
旋转数组的最小数字 / First Bad Version
简单版本:数组中的元素互不相同 设置两个指针left = 0和right = nums.size() - 1 每次循环一开始,判断nums[left] < nums[right]是否成立,如果成立,那么说明数组nums[left..right]的旋转值为0,直接返回nums[left]为最小元素 若数组旋转值不为0,考察中间元素nums[mid] 情况1:nums[left] &lt...原创 2018-07-28 08:47:39 · 183 阅读 · 0 评论 -
旋转数组中的二分查找
简单版本:数组中元素互不相同 困难版本:数组中元素有重复原创 2018-07-28 08:48:52 · 587 阅读 · 0 评论 -
二分查找简单题
Leetcode 35. Search Insert Position 最普通的Binary Search,若target存在,则返回所在下标;若target不存在,则返回target待插入的位置,本质上就是实现lower_bound函数 无论mid = left + ( right - left ) / 2,还是mid = left + ( right - left + 1 ) / 2,最后...原创 2018-07-28 10:17:02 · 1218 阅读 · 0 评论 -
循环条件left小于right的那些题
162. Find Peak Element 给定数组nums,保证相邻元素不相等,假设nums[-1] = nums[n] = -∞,于是nums中可能存在多个“山峰”,找出任意一个“山峰”的位置 class Solution { public: int findPeakElement(vector<int>& nums) { int left...原创 2018-08-16 21:34:32 · 148 阅读 · 0 评论