|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Member
Iscritto dal: Mar 2001
Messaggi: 53
|
[C] semplice conversione da iterativo a ricorsivo
qualcuno mi convertirebbe le due funzioni iterative elencate sotto in funzioni ricorsive:
Codice:
void copy (int *b, int *c, int *j, int n, int *k)
{
int h;
for (h=*j;h<=n;h++)
{
c[*k]=b[h];
*k=*k+1;
}
}
Codice:
void shortmerge (int *a, int *b, int *c, int m, int *j, int *k)
{
int l;
l=0;
while (l<=m)
{
if (a[l]<=b[*j])
{
c[*k]=a[l];
l=l+1;
}
else
{
c[*k]=b[*j];
*j=*j+1;
}
*k=*k+1;
}
}
Ultima modifica di Dark_Tranquillity : 08-07-2004 alle 15:09. |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Jan 2004
Città: Montignoso(MS)
Messaggi: 9456
|
Re: [C] semplice conversione da iterativo a ricorsivo
La prima forse potrebbe essere cosi:
Codice:
void copy (int * b, int *c, int * j, int n, int * k)
{
if (*j == n)
return;
else
c[*k] = b[*j];
copy(b, c, j, (*j)+1, (*k)+1);
}
P.S. : perche' usi dei puntatori anche per "semplici" interi (E non solo per gli array di interi ?)
__________________
"Il Meglio che si possa ottenere è evitare il peggio." I.C. |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 23:05.



















