二分法彙總

2021-10-09 23:49:18 字數 1830 閱讀 7991

以記憶為目的,避免細節糾結。

尋找左右邊界**幾乎一樣,只是最後返回值的不同,有時需要返回-1有時需要返回相關索引。

經典題目**

leetcode題目34第乙個和最後乙個位置

public

static

int[

]searchrange

(int

nums,

int target)

public

static

intfindright

(int

nums,

int target)

else

if(nums[mid]

>target)

else}if

(right<

0||nums[right]

return-1

;else

return nums[right]

==target?right:-1

;}public

static

intfindleft

(int

nums,

int target)

else

if(nums[mid]

>target)

else}if

(left>=nums.length||nums[left]

>target)

return-1

;else

return nums[left]

==target?left:-1

;}

題目
public

intfirstbadversion

(int n)

else

left = mid+1;

}if(left>n||

!isbadversion

(left)

)return n+1;

return left;

}

思路

**

public

static

intsearchinsert

(int

nums,

int target)

else

if(nums[mid]

>target)

else

}return mid;

}

思路 題目

leetcode題目35

模板

public

static

intsearchinsert

(int

nums,

int target)

else

if(nums[mid]

>target)

else}if

(left>=nums.length||nums[left]

return nums.length;

else

return left;

}

思路

模板

public

static

intfindright

(int

nums,

int target)

else

if(nums[mid]

>target)

else}if

(right<

0||nums[right]

return0;

else

return right;

}

二分法題目彙總

題目知識點 我的題解 其他題解 69.x 的平方根 二分法找右邊界 力扣題解 官方題解 278.第乙個錯誤的版本 二分法找左邊界 力扣題解 官方題解 triple inversion 二分 排序 csdn題解 官方題解 minimum light radius 二分法找左右邊界 csdn題解 719...

LeetCode二分法彙總 1

給定乙個排序陣列和乙個目標值,在陣列中找到目標值,並返回其索引。如果目標值不存在於陣列中,返回它將會被按順序插入的位置。你可以假設陣列中無重複元素。輸入 1,3,5,6 5 輸出 2 輸入 1,3,5,6 2 輸出 1 輸入 1,3,5,6 7 輸出 4 輸入 1,3,5,6 0 輸出 0方法 二分...

C 二分法查詢,遞迴二分法

用二分法來求需要查詢的值.includeusing namespace std 查詢key元素是否存在 int findkey const int buf 100 const int ilen,const int key else right left mid 1 查詢失敗 return 1 查詢k...