
二分查找
二分查找
Chamberlain T
尼蝶
展开
-
LeetCode.35.搜索插入位置
LeetCode.35.搜索插入位置 难度:easy Java: 暴力法: class Solution { public int searchInsert(int[] nums, int target) { for (int i = 0; i < nums.length; i++) { if (nums[i] >= target) { return i; } .原创 2021-12-19 20:10:41 · 142 阅读 · 0 评论 -
LeetCode.704.二分查找
LeetCode.704.二分查找 难度:easy 简单的二分查找,需要注意的是每次判断和查找的边界处理:左闭右闭和左闭右开的查找在细节上的处理是不一样的; Java: 左闭右闭: class Solution { public int search(int[] nums, int target) { if (target < nums[0] || target >nums[nums.length - 1]) { return -.原创 2021-12-19 19:29:23 · 146 阅读 · 0 评论 -
LeetCode.278. 第一个错误的版本(二分查找)
LeetCode.278. 第一个错误的版本 难度:easy 因为要尽可能的减少调用api,所以采用二分查找,要注意的细节是在计算mid时,left+right可能会导致中间结果超出int的表示范围(int整数类型,4字节,32位,取值范围:[-2^31,2^31-1]),所以我们改成: mid = left + (right - left) / 2; 具体代码: /* The isBadVersion API is defined in the parent class...原创 2022-01-23 11:40:25 · 222 阅读 · 0 评论