How can I order consecutive numbers?

2 visualizaciones (últimos 30 días)
Riccardo Rossi
Riccardo Rossi el 8 de Jun. de 2020
Respondida: Walter Roberson el 8 de Jun. de 2020
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 comentarios
David Hill
David Hill el 8 de Jun. de 2020
I don't recognize the pattern. What is the algorithm for the conversion?
Walter Roberson
Walter Roberson el 8 de Jun. de 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.

Iniciar sesión para comentar.

Respuesta aceptada

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

Más respuestas (0)

Categorías

Más información sobre Entering Commands en Help Center y File Exchange.

Productos

Community Treasure Hunt

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

Start Hunting!

Translated by