Relocate a value of a vector.

7 views (last 30 days)
KonVak
KonVak on 17 Jan 2020
Edited: Matt J on 17 Jan 2020
Hello, i need to relocate a random value of a vector to a random position in it without changing the order of the other numbers.
I already have achieved finding a random value and its position and also the desired position.
It should look like this , for example
A=[1 2 3 4 5 6 7 8 9 0]
Position 7 to position 2
A=[1 7 2 3 4 5 6 8 9 0]
and it should also work the other way , position 2 to 7 since the positions are random.

Accepted Answer

Matt J
Matt J on 17 Jan 2020
Edited: Matt J on 17 Jan 2020
A=[1 2 3 4 5 6 7 8 9 0];
i=2; %position removed
j=7; %target position
B=A;
k=i<j;
B(i)=inf;
C = [B(1:j+k-1),A(i),B(j+k:end)];
result=C(isfinite(C))
>> result =
1 7 2 3 4 5 6 8 9 0

More Answers (0)

Categories

Find more on Fourier Analysis and Filtering in Help Center and File Exchange

Products


Release

R2018a

Community Treasure Hunt

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

Start Hunting!