How can i find the sorted indexing of the array

1 view (last 30 days)
Hi, Sir how can i find the sorted indexing of the array when i am sorting it in the same code??
A = [2 9 6 5 8]
swapped = 1;
while swapped
swapped = 0;
for i=1:numel(A)-1
if A(i+1) > A(i)
memory = A(i);
A(i) = A(i+1);
A(i+1) = memory;
swapped = 1;
end
end
end
disp(A)

Accepted Answer

Andrei Bobrov
Andrei Bobrov on 6 May 2019
A = [2 9 6 5 8];
n = numel(A);
AA = [A;1:n];
swapped = 1;
while swapped
swapped = 0;
for ii = 1:n-1
if AA(1,ii+1) > AA(1,ii)
memory = AA(:,ii);
AA(:,ii) = AA(:,ii+1);
AA(:,ii+1) = memory;
swapped = 1;
end
end
end
Asort = AA(1,:);
Index_sort = AA(2,:);

More Answers (0)

Categories

Find more on Shifting and Sorting Matrices in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!