How can I order consecutive numbers?

2 views (last 30 days)
Hello everyone,
I need to reorder the values in A as follow (B):
(A) (B)
1 1
2 2
3 2
4 3
4 4
6 4
6 6
5 6
6 6
5 5
2 5
How can i do it? Thank you very much!
  2 Comments
David Hill
David Hill on 8 Jun 2020
I don't recognize the pattern. What is the algorithm for the conversion?
Walter Roberson
Walter Roberson on 8 Jun 2020
I think it is a "stable" sort. The elements appear in the final vector in the same order they are introduced in the original. You can get the elements in that order with unique() with 'stable' option, but I am still working on a good way to get the desired final result.

Sign in to comment.

Accepted Answer

Walter Roberson
Walter Roberson on 8 Jun 2020
[~,~,R] = unique(A, 'stable');
[~,idx] = sort(R);
B = A(idx)
... or at least it worked for that example.

More Answers (0)

Products

Community Treasure Hunt

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

Start Hunting!