top of page

Looking to master object-oriented and system design for tech interviews or career growth?

  • Improve your system design and machine coding skills.

  • Study with our helpful resources.

  • Prepare for technical interviews and advance your career.

**We're in beta mode and would love to hear your feedback.

Sorted Insert Position InterviewBit Solution


Problem Description:

Given a sorted array A and a target value B, 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.


Problem Constraints

1 <= |A| <= 100000
1 <= B <= 109



Input Format

First argument is array A.
Second argument is integer B.

Output Format

Return an integer, the answer to the problem.

Example Input

Input 1:
 A = [1, 3, 5, 6] B = 5 
Input 2:
 A = [1, 3, 5, 6] B = 2 

Example Output:

Output 1:
 2 
Output 2:
 1 

Example Explanation

Explanation 1:
 5 is found at index 2. 
Explanation 2:
 2 will be inserted at index 1. 

Approach


The approach is to find the upper bound of the element. If the element exists then it will return the rightmost position of that element, otherwise, it returns the position of an element just greater than the current element.



Time & Space Complexity

Time Complexity: O(LogN)

- Since we have used a binary search

Space Complexity: O(1)

- Ignoring the given space taken by input array.



Solution


Code in C++


bottom of page