Dou*_*ubt 23
这是另一种方法.矢量data
不需要排序,b
可以是正数或负数.
[~,I] = min(abs(data-b));
c = data(I);
Run Code Online (Sandbox Code Playgroud)
bde*_*caf 11
如果数据已排序,您可以使用find:
i_lower = find(data <= b,1,'last');
i_higher = find(data >= b,1,'first');
lower_than_b = data(i_lower)
higher_than_b = data(i_higher)
Run Code Online (Sandbox Code Playgroud)