MATLAB: Flip an array with the use of vectors

arrayflipMATLABvectors

I would like to flip specific cells in an array, not the whole array, with the use of vectors. For example a=[1 7 5 9 3 2 4 1] and i want to flip it from 5 to 2 and make it a=[1 7 2 3 9 5 4 1]. Any suggestions? Thank you in advance.

Best Answer

"Any suggestions?"
Use indexing (which in MATLAB starts from 1):
>> a = [1,7,5,9,3,2,4,1]
a =
1 7 5 9 3 2 4 1
>> a(3:6) = a(6:-1:3)
a =
1 7 2 3 9 5 4 1