Recursive

class Solution {

public:

int searchInsert(vector<int>& nums, int target) {

if(nums.empty()) return 0;

return helper(nums,target,0,nums.size()-1);

}

int helper(vector<int>& nums, int target,int l,int r){

int m = (l+r)/2;

if(target==nums[m])

return m;

else if(target>nums[m])

return r>m? helper(nums,target,m+1,r): r+1;

else

return l<m?helper(nums,target,l,m-1):l;

}

};

Last updated

Was this helpful?