value) return BinarySearch(S, value, low, mid-1) else if (S[mid] value) return BinarySearch(S, value, low, mid-1) else if (S[mid] value) return BinarySearch(S, value, low, mid-1) else if (S[mid]

https://github.com/chwang12341/LeetCode-Learning/blob/master/binary_search/Search_Insert_Position_35/Search_Insert_Position.ipynb

Pseudocode(recursive version) for Binary search

//initially low=0, high=n-1
BinarySearch(S[0..n-1], value, low, high)
	if (high<low)
		return "not found"
		
	mid=(low+high)/2
	if (S[mid]>value)
		return BinarySearch(S, value, low, mid-1)
	else if (S[mid]<value) 
	...