Re: [LeetCode] 刷到面試 Grind169 C++

作者: SuiseiLeda (星街雷達)   2023-03-15 17:42:57
704. Binary Search easy題
為啥我寫二分法跑得比暴力解還慢啊
我有寫錯嗎
:(
暴力法:
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;
}
};
二分法:
class Solution {
public:
int search(vector<int>& nums, int target) {
int left = 0;
int right = nums.size() - 1;
int mid = (left+right)/2;
while(left<=right){
if(target == nums[mid]) return mid;
if(target < nums[mid]) {
right = mid - 1;
mid = (left+right)/2;
continue;
}
if(target > nums[mid]) {
left = mid + 1;
mid = (left+right)/2;
continue;
}
}
return -1;
}
};
作者: v03516020 (露露貝爾)   2023-03-15 17:44:00
大師
作者: dustsstar79 (穆)   2023-03-15 17:46:00
大師
作者: NCKUEECS (小惠我婆)   2023-03-15 17:52:00
再跑一次就不一樣了
作者: ZooseWu (N5)   2023-03-15 17:53:00
我猜陣列數量太小
作者: tzyysang (tzyysang)   2023-03-15 18:15:00
std::lower_bound

Links booklink

Contact Us: admin [ a t ] ucptt.com