PDA

Visualizza la versione completa : [C] Pseudocodice dell'algoritmo Insertion-Sort


64less
14-04-2010, 20:57
Allora, il pseudo-codice il seguente:



for j <- 2 to lenght[A]
do key <- A[j]
|> Inserisce A[j]
i<-j-1
while i> 0 and A[i] > Key
do A[i+j]<-A[i]
i<-i-1
A[i+1]<- key


Se lo trasformo in C diventa


for ( j=2 , j<len(A) , j++)
{
key=A[j];
i=j-1;
while( i>0 & a[i]>key )
A[i+1]=A[i]
i = i-1
A[i+1]=key;
}

E' corretto?

MacApp
15-04-2010, 12:58
Originariamente inviato da 64less
Allora, il pseudo-codice il seguente:



for j <- 2 to lenght[A]
do key <- A[j]
|> Inserisce A[j]
i<-j-1
while i> 0 and A[i] > Key
do A[i+j]<-A[i]
i<-i-1
A[i+1]<- key


Se lo trasformo in C diventa


for ( j=2 , j<len(A) , j++)
{
key=A[j];
i=j-1;
while( i>0 & a[i]>key )
A[i+1]=A[i]
i = i-1
A[i+1]=key;
}

E' corretto?

non corretto. ad esempio nel for ci vanno i ; non le , e mancano alcuni ; nelle altre righe del codice.
in ogni modo sostituisci la & con &&.
ma son cose banali che leggi in un qualunque libro... proprio nelle prime pagine eh
;-)

64less
16-04-2010, 21:47
Il testo proprio quello, ci sono le j nel ciclo for



for j <- 2 to lenght[A]
do key <- A[j]
|> Inserisce A[j]
i<-j-1
while i> 0 and A[i] > Key
do A[i+j]<-A[i]
i<-i-1
A[i+1]<- key


Solo che questo pseudo-codice un p ostico rispetto al linguaggio C

MItaly
16-04-2010, 21:56
Allora non sono l'unico che trova lo pseudocodice cento volte pi ostico (e spesso pi demenziale) di un'implementazione di esempio in un linguaggio vero. :)

64less
30-04-2010, 20:07
Ho trovato l'esatta implementazione, ci sono andato vicino




for ( j=1 , j < sizeof ( A ) , j++)
{
key=A[j];
i=j-1;
while( i >= 0 && a[i] > key )
{
A[i+1]=A[i];
i --;
}
A[i+1]=key;
}

oregon
30-04-2010, 20:42
Originariamente inviato da MItaly
Allora non sono l'unico che trova lo pseudocodice

Sicuramente ... anche perch uno "pseudocodice" non realmente ben codificato e ognuno si inventa quello che vuole (in pratica, prende parti di sintassi di vari linguaggi, li mischia e tira fuori una sequenza incomprensibile se non sbagliata ...).

Molto meglio affidarsi ad un linguaggio, quello che si conosce ...

Loading