Shifting the first element of an array to the end

35 views (last 30 days)
Hi all, I.m trying to transform vector A into B as below,
A B
[ 1 2 3 4 ] [ 4 1 2 3 ]
Here is what I have got so far, but it didnt work out, please point out where I got it wrong
A = [1 2 3 4];
B = [A(1)];
for i = [2:length(A)]
B = [A(i) B]
end
disp(B);

Accepted Answer

Matt J
Matt J on 6 Sep 2021
A=[ 1 2 3 4 ];
B=[A(end),A(1:end-1)]
B = 1×4
4 1 2 3

More Answers (1)

Ive J
Ive J on 6 Sep 2021
a = 1:4;
circshift(a, 1)
ans = 1×4
4 1 2 3
  1 Comment
Dillon La
Dillon La on 6 Sep 2021
thank you, but do you have a simpler version of it?
I'm trying to figure out what I got wrong rather than using a new operator

Sign in to comment.

Categories

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

Tags

Products


Release

R2020b

Community Treasure Hunt

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

Start Hunting!