Ho pensato molto a questo, ma non sono stato in grado di inventare qualcosa.Una struttura dati 2D ottimale
Supponiamo che io voglia raccogliere X elementi di ordinabili da qualsiasi colonna e qualsiasi riga in O (m * n), e anche la possibilità di inserire o eliminare una riga in O (m + n) o meno .. . È possibile?
Quello che mi è venuto in mente è una griglia collegata, dove i nodi sono inseriti in un vettore, quindi ho indici per loro, e indicizzato la prima riga e colonna per rimuovere la necessità di attraversare l'elenco in qualsiasi direzione. con il mio metodo ho raggiunto la complessità di cui sopra, ma mi chiedevo solo se fosse possibile ridurlo ulteriormente con un fattore non costante.
Esempio per sortability:
1 100 25 34
2 20 15 16
3 165 1 27
Ordinati per 3a fila:
25 1 34 100
15 2 16 20
1 3 27 165
ordinamento che dal 1 ° colonna:
1 3 27 165
15 2 16 20
25 1 34 100
È un compito? –
Cosa succede se è? – shoosh
No, per niente. La mia classe di strutture dati è stata l'anno scorso. Ma se lo fosse, sarebbe importante? Ho chiesto una soluzione o una risposta? Non si tratta di stabilire se un problema di programmazione sia possibile entro una certa complessità temporale e quali strutture dati utilizzare ancora nel codice di moralità? Perché le domande che non hanno un'applicazione citata vengono immediatamente etichettate come compiti a casa? – Vanwaril