Quick way to find the point where a vector changes from increasing to decreasing.

24 views (last 30 days)
Hi I have a vector that goes something like this, [10,9,7,5,3,2,1,2,3,5,7]. You notice in this vector there is the point with value 1 at which the next successive value grows instead of shrinks. My question is about finding this point. I know I could just loop through with a for loop watching for when the difference between point n and n+1 changes sign but wonder if there is a better method. Thanks

Accepted Answer

Matt Fig
Matt Fig on 15 Dec 2012
Edited: Matt Fig on 15 Dec 2012
D = [10,9,7,5,3,2,1,2,3,5,7];
V = [0 diff(D)>0] % Indicates sign of difference
S = find(V,1,'first') % First index where V is +

More Answers (0)

Categories

Find more on Loops and Conditional Statements in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!