MATLAB: How to repeat array with

edgetsp

Hi. I have an array for a TSP problem like this A = [1 2 3 4 5] where 1 2 3 shows the city number. I want to know if there's a function in matlab that gives the edge so E = [[1 2], [2 3], [3 4], [4 1]]. Is there a simple way to create such an array like that? since I have 700 arrays with 100x iterations. Thanks

Best Answer

A = 1:4;
E = [A(1) repelem(A(2:end), 2) A(1)];
E =
1 2 2 3 3 4 4 1