PDA

View Full Version : MERGESORT - qualcuno mlo spiega?


thefrog
07-01-2004, 13:38
come da titolo.....qualcuno mi spiega come funziona l'algoritmo mergesort???

grazie mille

bizzu
07-01-2004, 14:07
Allora, il ms si basa sulla tecnica "divide et impera", che consiste nel dividere il problema in più sottoproblemi, per poi risolverli ricorsivamente con la stessa tecnica; infine si combinano le soluzioni dei sottoproblemi per trovare quella del problema originario.
Quindi: tu hai un vettore, lo dividi in 2, le parti ottenute le dividi in 2, e così via ricorsivamente fino a che non hai ottenuto elementi singoli, che per definizione sono vettori ordinati; a questo punto usi la funzione di merge che, per ordinare due vettori, prende il più piccolo dei due elementi affioranti e lo inserisce nel vettore in costruzione, fino a che i due vettori di partenza non sono svuotati.
In questo modo la soluzione si "crea" a partire dal fondo (come in tutti gli algoritmi ricorsivi), fino ad arrivare al vettore originario che sarà così ordinato.
;)

thefrog
07-01-2004, 14:15
Originariamente inviato da bizzu
Allora, il ms si basa sulla tecnica "divide et impera", che consiste nel dividere il problema in più sottoproblemi, per poi risolverli ricorsivamente con la stessa tecnica; infine si combinano le soluzioni dei sottoproblemi per trovare quella del problema originario.
Quindi: tu hai un vettore, lo dividi in 2, le parti ottenute le dividi in 2, e così via ricorsivamente fino a che non hai ottenuto elementi singoli, che per definizione sono vettori ordinati; a questo punto usi la funzione di merge che, per ordinare due vettori, prende il più piccolo dei due elementi affioranti e lo inserisce nel vettore in costruzione, fino a che i due vettori di partenza non sono svuotati.
In questo modo la soluzione si "crea" a partire dal fondo (come in tutti gli algoritmi ricorsivi), fino ad arrivare al vettore originario che sarà così ordinato.
;)
:ave: :ave: :ave: :ave: :ave:


grazie mille!!!


si può chiudere

maxithron
07-01-2004, 14:22
Aspe'!! che ora viene il bello....visto che lo squisito bizzu si è preso la briga di spiegartelo....io, volendo fare un pò il cattivello ti darò da fare gli esercizi!!! :D :D

thefrog
07-01-2004, 14:32
Originariamente inviato da maxithron
Aspe'!! che ora viene il bello....visto che lo squisito bizzu si è preso la briga di spiegartelo....io, volendo fare un pò il cattivello ti darò da fare gli esercizi!!! :D :D

:D

ne ho già abbastanza grazie :D

VegetaSSJ5
08-01-2004, 11:29
Originariamente inviato da maxithron
Aspe'!! che ora viene il bello....visto che lo squisito bizzu si è preso la briga di spiegartelo....io, volendo fare un pò il cattivello ti darò da fare gli esercizi!!! :D :D
postali lo stesso...;)