Are there any built-in way to calculate inversions?

5 visualizaciones (últimos 30 días)
Ivor Horton
Ivor Horton el 15 de Jun. de 2020
Respondida: David Goodmanson el 16 de Jun. de 2020
In Mathematica, there is a built-in function
Inversions
which counts the number of inversions in permutation.
Is there a similar function in Matlab?
Thanks.

Respuesta aceptada

David Goodmanson
David Goodmanson el 16 de Jun. de 2020
Hi Ivor,
I do not know of one, but here is one way to accomplish it
p = [3 6 1 4 5 2]; % for example
inversions = 0;
for k = length(p):-1:2
f = find(k==p);
inversions = inversions + k -f;
p(f) = [];
end
inversions % the result

Más respuestas (0)

Categorías

Más información sobre Language Fundamentals en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by