(LeetCode OJ) 35. Search Insert Position
35. Search Insert PositionMy SubmissionsQuestionTotal Accepted: 94638 Total Submissions: 256951 Difficulty: Medium
Given a sorted array and a target value, return the index if the target is found. If not, return the index where it wocould be if it were inserted in order.
You may assume no duplicates in the array.
Here are few examples.
[1,3,5,6]
, 5 → 2
[1,3,5,6]
, 2 → 1
[1,3,5,6]
, 7 → 4
[1,3,5,6]
, 0 → 0
Subscribeto see which companies asked this question
Hide TagsArrayBinary SearchHide Similar Problems (E) First Bad Version
Analysis:
Binary Search for the location to be inserted
Class Solution {public: int searchInsert (vector
& Nums, int target) {int low = 0, high = nums. size ()-1; while (low <= high) {int mid = (low + high)/2; if (nums [mid]
Target) high = mid-1; // The position to be inserted must be on the left of the mid if (nums [mid] = target) return mid; // found} return low ;}};