Próbując opracować własny algorytm sortowania, szukam optymalnego testu porównawczego, z którym mogę go porównać. W przypadku nieposortowanego uporządkowania elementów A i posortowanego uporządkowania B , jaki jest skuteczny sposób obliczenia optymalnej liczby transpozycji, które można uzyskać od A do B ?
Transpozycja jest definiowana jako zmiana pozycji 2 elementów na liście, a więc na przykład
1 2 4 3
ma jedną transpozycję (transpozycja 4 i 3), aby to zrobić
1 2 3 4
Coś jak
1 7 2 5 9 6
wymaga 4 transpozycji (7, 2), (7, 6), (6,5), (9, 7)
Aktualizacja (9.7.11): zmieniono pytanie, aby używać „transpozycji” zamiast „swapów” w odniesieniu do niesąsiadujących giełd.