image thumbnail

Search closest value in a vector

version 1.1.0.0 (11.5 KB) by Dr. Murtaza Khan
search value in sorted vector and find index and value with respect to vector that is equal or clos

14.1K Downloads

Updated 09 Jul 2009

View License

Search value 'v' in sorted vector 'x' and find index and value
with respect to vector x that is equal or closest to 'v'.

If more than one value is equal then anyone can be returned
(this is property of binary search).
If more than one value is closest then first occurred is returned
(this is property of linear search).

Algorithm
First binary search is used to find v in x. If not found
then range obtained by binary search is searched linearly
to find the closest value.

INPUT:
x: vector of numeric values,
x should already be sorted in ascending order
(e.g. 2,7,20,...120)
v: numeric value to be search in x

OUTPUT:
i: index of v with respect to x.
cv: value that is equal or closest to v in x

Cite As

Dr. Murtaza Khan (2021). Search closest value in a vector (https://www.mathworks.com/matlabcentral/fileexchange/15088-search-closest-value-in-a-vector), MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R14SP2
Compatible with any release
Platform Compatibility
Windows macOS Linux

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!