美文网首页
二分查找模板

二分查找模板

作者: 以梦为马驾驾驾 | 来源:发表于2023-08-08 21:54 被阅读0次

java语言的二分查找模板

  • left < right - 1
  • mid = left + (right - left) / 2 向下取整
  • 找到相等的情况下, 向左向右看看
  • 最后同时要判断下标是left 与 right 的数组值
class Solution {
    public int findT(int[] nums, int target, boolean isRight) {
        if(nums == null || nums.length == 0) {
            return -1;
        }
        int left = 0;
        int right = nums.length - 1;
        int mid = -1;
        while(left < right - 1) {
            mid = left + (right - left) / 2;
            if(nums[mid] > target) {
                right = mid - 1;
            }else if(nums[mid] < target) {
                left = mid + 1;
            }else { // 重点,相等的情况下, 继续想右边看看有没有相等的
                if(isRight) {
                    left = mid;
                }else {
                    right = mid;
                }
            }
        }
        if( false == isRight) {
            if(nums[left] == target) {
                return left;
            }else if(nums[right] == target) {
                return right;
            }
        }else {
            if(nums[right] == target) {
                return right;
            }else if(nums[left] == target) {
                return left;
            }
        }
        return -1;
    }

}

相关文章

  • 二分查找

    [TOC] 二分查找的基础模板 二分查找靠左的Index基础模板 二分查找靠右的Index基础模板 二分查找插入t...

  • Algorithm进阶计划 -- 二分搜索

    二分搜索二分搜索模板二分搜索运用 1. 二分搜索模板 二分搜索(二分查找)也称折半查找(Binary Search...

  • 二分查找模式

    二分查找通用的模板int mid = (left + right) / 2容易溢出 二分查找的通用模板 使用“左边...

  • 二分查找总结

    二分查找是在每次匹配后,将查找的空间一分为二的算法,二分查找应该是有序的数组进行查找. 二分查找模板 1. 模板一...

  • LeetCode 专题 :二分查找

    LeetCode 第 704 题是二分查找的模板问题。 LeetCode 第 704 题:二分查找 传送门:704...

  • LeetCode 数组专题 1:二分查找

    二分查找法 说明:二分查找法在代码实现上有模板方法,一定要掌握。 1、二分查找法的使用前提:数组一定要是排好序的,...

  • 二分查找模板

    标准二分查找的模板: 循环条件: left <= right中间位置计算: mid = left + ((righ...

  • 二分查找模板

  • 二分查找模板

    模板原地址,从大佬那里习得的另一位的解析,下面有更具体的分析模板一共有两种,适用于两种不同的情况,第一种是: 我们...

  • python二分查找算法

    文章概述 二分查找法介绍 简单查找与二分查找对比 二分查找  二分查找算法主要思想:在有序列表中查找指定元素,先从...

网友评论

      本文标题:二分查找模板

      本文链接:https://www.haomeiwen.com/subject/bghopdtx.html