赞
踩
704.二分查找 题目链接:leetcode704 Binary search
暴力解法:
class Solution { public: int search(vector<int>& nums, int target) { for(int i=0;i<nums.size();i++) { if(nums[i]==target) { return i; } } return -1; } };
这里就是一个for循环来遍历数组然后找出是否存在条件。
Tips:nums.size() 求数组长度,然后我也见过nums.size()-1, 忘了这是啥了。(看到后面就想起来了是为了注意边界然后减1)
二分法:二分法使用条件:1.有序数组,2.无重复
二分法同时涉及了很多关于边界的条件,因此区间分为两种左闭右闭[left,right]和左闭右开[left,right)
第一种边界为[left,right]:
class Solution{
public:
int search(v
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。