天天看點

Leetcode 704. 二分查找

Leetcode 704. 二分查找

給定一個 n 個元素有序的(升序)整型數組 nums 和一個目标值 target ,寫一個函數搜尋 nums 中的 target,如果目标值存在傳回下标,否則傳回 -1。

示例 1:

輸入: nums = [-1,0,3,5,9,12], target = 9
輸出: 4
解釋: 9 出現在 nums 中并且下标為 4      
輸入: nums = [-1,0,3,5,9,12], target = 2
輸出: -1
解釋: 2 不存在 nums 中是以傳回 -1      
  • 你可以假設 nums 中的所有元素是不重複的。
  • n 将在 [1, 10000]之間。
  • nums 的每個元素都将在 [-9999, 9999]之間。
class Solution {
public:
    int search(vector<int>& nums, int target) {
        vector<int>::iterator it;
        it=find(nums.begin(),nums.end(),target);
        if(it!=nums.end())
            return it-nums.begin();
        return -1;
    }
};