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

20 Ansichten (letzte 30 Tage)
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

Akzeptierte Antwort

Matt Fig
Matt Fig am 15 Dez. 2012
Bearbeitet: Matt Fig am 15 Dez. 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 +

Weitere Antworten (0)


Mehr zu Loops and Conditional Statements finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by