zoukankan      html  css  js  c++  java
  • 35. 搜索插入位置-二分查找-简单

    问题描述

    给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。

    你可以假设数组中无重复元素。

    示例 1:

    输入: [1,3,5,6], 5
    输出: 2
    示例 2:

    输入: [1,3,5,6], 2
    输出: 1
    示例 3:

    输入: [1,3,5,6], 7
    输出: 4
    示例 4:

    输入: [1,3,5,6], 0
    输出: 0

    来源:力扣(LeetCode)
    链接:https://leetcode-cn.com/problems/search-insert-position

    解答

    class Solution {
        public int searchInsert(int[] nums, int target) {
            int left = 0;
            int right = nums.length - 1;
            
            if(right == -1)return 0;
            int mid;
            while(left <= right){
                mid = (left + right)/2;
    
                if(nums[mid] == target)return mid;
                else if(nums[mid] > target)right = mid - 1;
                else left = mid + 1;
            }
            return left;
        }
    }
  • 相关阅读:
    DFS总结
    cmake-make-gcc(g++)
    std::function
    basic_string定义的相关string函数
    欧拉路径和欧拉回路
    正则表达式
    C++ Data Types
    关于uniapp的插槽
    关于微信H5 分享配置
    h5请求的时候总是会跨域
  • 原文地址:https://www.cnblogs.com/xxxxxiaochuan/p/13336201.html
Copyright © 2011-2022 走看看