Sul sito Web Algorithms di ordinamento viene fatta la seguente richiesta:
L'algoritmo di ordinamento ideale avrebbe le seguenti proprietà:
- Stabile: le chiavi uguali non vengono riordinate.
- Funziona in posizione, richiedendo spazio extra.
- Confronti chiave peggiore dei casi .
- swap nel caso peggiore .
- Adattivo: accelera fino a quando i dati sono quasi ordinati o quando sono presenti poche chiavi univoche.
Non esiste un algoritmo che abbia tutte queste proprietà, quindi la scelta dell'algoritmo di ordinamento dipende dall'applicazione.
La mia domanda è, è vero che
non esiste un algoritmo [di ordinamento] che abbia tutte queste proprietà
e se sì, perché? Che cosa c'è in queste proprietà che le rendono tutte impossibili da soddisfare contemporaneamente?