Il prof ha spiegato cosi' i passaggi della pseudocodifica del selection sort:
4 2 1 3
2 4 1 3
1 4 2 3
(1) 4 2 3
(1) 2 4 3
(1 2) 4 3
1 2 3 4
Andando qui
https://books.google.it/books?id=oA77AwAAQBAJ&pg=PA236&lpg=PA236&dq=pseudocodifica+selection+sort&source=bl&ots=urlw-HaJpR&sig=WLdQflfCxguQirvkklhbDY3i0n8&hl=it&sa=X&ved=2ahUKEwji7s_-uvPaAhVHyRQKHfKACjMQ6AEwCHoFCAAQhQE#v=onepage&q=pseudocodifica selection sort&f=false
la vedo un po' diversa...
Inoltre perche' nella spiegazione viene messo
Per i=1,2....n RIPETI quando nella codifica viene scritto:
for(i=0; i<dim-1; i++)
come nel code sotto che ho fatto? (quindi il controllo di i parte da 0 non da 1)
Qualcuno puo' aiutarmi per non confondere le idee e spiegarmi meglio il tutto?
Grazie infinite.
4 2 1 3
2 4 1 3
1 4 2 3
(1) 4 2 3
(1) 2 4 3
(1 2) 4 3
1 2 3 4
Andando qui
https://books.google.it/books?id=oA77AwAAQBAJ&pg=PA236&lpg=PA236&dq=pseudocodifica+selection+sort&source=bl&ots=urlw-HaJpR&sig=WLdQflfCxguQirvkklhbDY3i0n8&hl=it&sa=X&ved=2ahUKEwji7s_-uvPaAhVHyRQKHfKACjMQ6AEwCHoFCAAQhQE#v=onepage&q=pseudocodifica selection sort&f=false
la vedo un po' diversa...
Inoltre perche' nella spiegazione viene messo
Per i=1,2....n RIPETI quando nella codifica viene scritto:
for(i=0; i<dim-1; i++)
come nel code sotto che ho fatto? (quindi il controllo di i parte da 0 non da 1)
Qualcuno puo' aiutarmi per non confondere le idee e spiegarmi meglio il tutto?
Grazie infinite.
Codice:
#include<iostream>
using namespace std;
int main()
{
int i,j,dim, min;
cout<<"Dimensioni array: ";
cin>>dim;
int arr[dim];
cout<<"Valori dell' array: "<<endl;
for(i=0; i<dim; i++)
cin>>arr[i];
for(i=0; i<dim-1; i++)
{
min = i;
for(j=i+1; j<dim; j++)
{
if(arr[j] < arr[min])
// if(arr[j] > arr[min]) Se si vuole un ordinamento decrescente
min = j;
}
int tmp = arr[min];
arr[min] = arr[i];
arr[i] = tmp;
}
cout<<"Ordinamento con selection sort: ";
for(i=0; i<dim; i++)
cout<<arr[i]<<",";
Ultima modifica: