u
This commit is contained in:
@@ -0,0 +1,38 @@
|
||||
package top100liked
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"testing"
|
||||
)
|
||||
|
||||
// https://leetcode.cn/problems/search-insert-position/description/?envType=study-plan-v2&envId=top-100-liked
|
||||
|
||||
func searchInsert(nums []int, target int) int {
|
||||
start, end := 0, len(nums)-1
|
||||
for start < end {
|
||||
mid := start + (end-start)/2
|
||||
if nums[mid] == target {
|
||||
return mid
|
||||
} else if nums[mid] > target {
|
||||
end = mid - 1
|
||||
} else {
|
||||
start = mid + 1
|
||||
}
|
||||
}
|
||||
if nums[end] < target {
|
||||
return end + 1
|
||||
}
|
||||
return end
|
||||
}
|
||||
|
||||
func Test(t *testing.T) {
|
||||
fmt.Printf("%+v\n", searchInsert([]int{1, 3, 5, 6}, 5))
|
||||
}
|
||||
|
||||
func Test2(t *testing.T) {
|
||||
fmt.Printf("%+v\n", searchInsert([]int{1, 3, 5, 6}, 2))
|
||||
}
|
||||
|
||||
func Test3(t *testing.T) {
|
||||
fmt.Printf("%+v\n", searchInsert([]int{1, 3, 5, 6}, 7))
|
||||
}
|
||||
Reference in New Issue
Block a user