Hai una matrice di elementi distinti. Hai accesso a un comparatore (una funzione di scatola nera che prende due elementi e e restituisce vero iff ) e una fonte di bit veramente casuale (una funzione di scatola nera che non prende argomenti e restituisce un bit casuale uniformemente indipendente). Considera le seguenti due attività:a b a < b
- L'array è attualmente ordinato. Produce una permutazione uniformemente (o approssimativamente uniformemente) selezionata casualmente.
- L'array è costituito da alcune permutazioni selezionate uniformemente a caso per natura. Produce una matrice ordinata.
La mia domanda è
Quale compito richiede più energia asintoticamente?
Non sono in grado di definire la domanda in modo più preciso perché non conosco abbastanza la connessione tra teoria dell'informazione, termodinamica o qualsiasi altra cosa sia necessaria per rispondere a questa domanda. Tuttavia, penso che la domanda possa essere resa ben definita (e spero che qualcuno mi aiuti con questo in una risposta!).
Ora, algoritmicamente, la mia intuizione è che sono uguali. Si noti che ogni tipo è un riordino al contrario e viceversa. L'ordinamento richiede confronti, mentre si mescola, poiché seleziona una permutazione casuale dascelte, richiede bit casuali. Sia lo shuffle che l'ordinamento richiedono circa swap.n ! log n ! ≈ n log n n
Tuttavia, credo che ci dovrebbe essere una risposta applicando il principio di Landauer , che afferma che richiede energia per "cancellare" un po '. Intuitivamente, penso che questo significhi che l'ordinamento dell'array è più difficile, poiché richiede la "cancellazione" di bit di informazioni, passando da uno stato di disturbo a bassa energia e ad alta entropia a uno altamente ordinato. D'altra parte, per ogni dato calcolo, l'ordinamento trasforma semplicemente una permutazione in un'altra. Dato che sono un completo non esperto qui, speravo che qualcuno con una conoscenza della connessione con la fisica potesse aiutare a "risolvere" questo!
(La domanda non ha ottenuto alcuna risposta su math.se , quindi la ripubblico qui. Spero che vada bene.)