码迷,mamicode.com
首页 > 其他好文 > 详细

19.2.3 [LeetCode 35]

时间:2019-02-03 12:40:25      阅读:160      评论:0      收藏:0      [点我收藏+]

标签:turn   alt   style   isp   lse   input   16px   targe   cli   

Given a sorted array and a target value, return the index if the target is found. If not, return the index where it would be if it were inserted in order.

You may assume no duplicates in the array.

Example 1:

Input: [1,3,5,6], 5
Output: 2

Example 2:

Input: [1,3,5,6], 2
Output: 1

Example 3:

Input: [1,3,5,6], 7
Output: 4

Example 4:

Input: [1,3,5,6], 0
Output: 0

题意

找插入位置

题解

技术图片
 1 class Solution {
 2 public:
 3     int searchInsert(vector<int>& nums, int target) {
 4         if (nums.back() < target)return nums.size();
 5         int size = nums.size(), s = 0, e = size - 1;
 6         while (s <= e) {
 7             int mid = (s + e) / 2;
 8             if (nums[mid] < target)
 9                 s = mid + 1;
10             else
11                 e = mid - 1;
12         }
13         return s;
14     }
15 };
View Code

加上第一行的特判比单纯二分要快一倍,很奇妙

19.2.3 [LeetCode 35]

标签:turn   alt   style   isp   lse   input   16px   targe   cli   

原文地址:https://www.cnblogs.com/yalphait/p/10350009.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!