Ricorsione

di il
1 risposte

Ricorsione

Ragazzi mi serve una mano
Ho scritto un programma sulla ricorsione il metodo margeSort
come faccio a testarlo?
nel senso se io ho questo vettore
V= [25, 40, 30, 2, 10, 5] e lo voglio far ordinare dal sotto riportato programma.
come scrivo la parte relativa al
public static void main (String [] args ){

Grazie a tutti anticipatamente

QUESTO è IL PROGRAMMA :
public class ricorsioneOrdina{
static void margeSort(int []V, int inizio, int fine){
if(inizio<fine){
int medio=(inizio + fine)/2;
margeSort(V,inizio,medio);
margeSort(V, medio+1, fine);
marge(V,inizio , fine, medio);
}
}

static void marge(int [] V, int inizio , int medio , int fine){
int [] A= new int[fine- inizio +1];
int i1= inizio;
int i2= medio + 1;
int iA=0;
while (i1< medio && i2<fine)
if (V[i1]<V[i2]){
V[i1]=A[iA];
i1 ++;
iA++;
}
else {
V[i2]=A[iA];
iA++; i2++;
}
for( ; i1<medio ; i1++){
V[i1]=A[iA];
iA++;
}
for( ; i2<fine ; i2++){
V[i2]=A[iA];
iA++;
}
for (iA=0, i1=inizio; i1<fine; i1++, iA++){
V[iA]=A[iA];
}
}


}

1 Risposte

  • Re: Ricorsione

    Ciao!!
    Non ho letto l'implementazione, ma nel main metterei
    
    int[] v = {25,40,30,2,10,5};
    RicorsioneOrdina.margeSort(v,0,v.length);
    
Devi accedere o registrarti per scrivere nel forum
1 risposte