不了解Binary Search演算法,可以參考[演算法筆記] Binary Search文章
Problem
題號:Leetcode 705
標題:Binary Search
演算法:Binary Search
Solution
class Solution {
func search(_ nums: [Int], _ target: Int) -> Int {
var left = 0
var right = nums.count - 1
while left <= right {
let mid = (left + right) / 2
let midVal = nums[mid]
//終止迴圈條件
if target == midVal {
return mid
}
if target > midVal {
left = mid + 1
} else {
right = mid - 1
}
}
return -1
}
}