Wolfram Function Repository
Instant-use add-on functions for the Wolfram Language
Function Repository Resource:
Find the position of a target value within a sorted array
ResourceFunction["BinarySearch"][v,val] gives the position of the last element of a sorted numeric vector v such that the element ei≤val. |
Find the position of the last element that is not greater than 6 in a list of numbers in ascending order:
| In[1]:= |
| Out[1]= |
BinarySearch[v,val] returns 0 when all elements of v are greater than the val:
| In[2]:= |
| Out[2]= |
BinarySearch can be considerably faster for packed arrays:
| In[3]:= |
| In[4]:= |
| Out[4]= |
| In[5]:= |
| Out[5]= |
| In[6]:= |
| In[7]:= |
| Out[7]= |
BinarySearch can give an erroneous result if the input vector is not sorted:
| In[8]:= |
| Out[8]= |
Use LengthWhile to find the position of first element less than 1 in an unsorted list:
| In[9]:= |
| Out[9]= |
This work is licensed under a Creative Commons Attribution 4.0 International License