Merge sort: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
m robot Modifico: lt:Sąlajos rikiavimo algoritmas, pl:Sortowanie przez scalanie |
m →algoritmo in C: reso più leggibile |
||
Riga 51:
===[[linguaggio C|C]]===
void mergesort(int a[], int left, int right);▼
{
int a[N], k;▼
scanf("\t%d ", &a[k]); ▼
}▼
i = left;
mergesort( a, (0), (N-1));▼
for(k=0; k<N; k++){▼
k = 0;
printf("\t%d ", a[k]); ▼
}▼
}▼
void mergesort(int a[], int left, int right){▼
b[k] = a[i];
▲ int center;
i++;
if (left<right){▼
}
center = (left+right)/2;▼
else {
mergesort(a, left, center);▼
mergesort(a, center+1, right);▼
j++;
}▼
k++;
▲ }
▲ int b[10];
b[k] = a[i];
▲ while ((i<=center) && (j<=right)){
i++;
▲ if (a[i] <= a[j]) { b[k] = a[i]; i++; }
k++;
▲ }
k++;▼
j++;
k++;
▲ }
▲ b[k] = a[j]; j++; k++;
{
int center;
▲ }
}
int main(void)
{
printf(": ");
}
printf("[ ");
for(i=0; i<LEN; i++)
printf("]\n");
return 0;
}
===[[C++]]===
| |||