Nel tentativo di escogitare il mio algoritmo di ordinamento, sto cercando il punto di riferimento ottimale con cui posso confrontarlo. Per un ordinamento non ordinato degli elementi A e un ordinamento ordinato B , qual è un modo efficiente per calcolare il numero ottimale di trasposizioni da ottenere da A a B ?
Una trasposizione è definita come la commutazione della posizione di 2 elementi nell'elenco, quindi ad esempio
1 2 4 3
ha una trasposizione (trasposizione 4 e 3) per farlo
1 2 3 4
Qualcosa di simile a
1 7 2 5 9 6
richiede 4 trasposizioni (7, 2), (7, 6), (6,5), (9, 7)
Aggiornamento (9/7/11): la domanda è stata modificata per utilizzare "trasposizione" anziché "swap" per fare riferimento a scambi non adiacenti.