|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Bannato
Iscritto dal: May 2015
Messaggi: 4
|
Aiuto urgente, algoritmo in linguaggio c
Non riesco a scrivere la funzione di ordinamento kmerge (una variante di merge) che suddivide il vettore in k parti invece che in 2.
La funzione originale merge è: void Merge(int A[], int p, int q, int r) { int i, j, k, B[MAX]; i = p; j = q+1; k = 0; while (i<=q && j<=r) { if (A[i]<A[j]) { B[k] = A[i]; i++; } else { B[k] = A[j]; j++; } k++; } while (i<=q) { B[k] = A[i]; i++; k++; } while (j<=r) { B[k] = A[j]; j++; k++; } for (k=p; k<=r; k++) A[k] = B[k-p]; return; } Come dovrebbe essere invece la funzione kmerge che ha in input come parametri (int A[], int p, int r, int k, int L[]) dove k è il numero di input delle suddivisioni dell'array e L[] il vettore delle posizioni? |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Jul 1999
Città: Black Mesa
Messaggi: 72404
|
Non si fanno gli esercizi altrui
CLOSED!! >bYeZ<
__________________
REGOLAMENTO & update1/update2 | IO C'ERO | Realme X3 SZ 12/256 - History | GTi is BACK
"Non sorridete.......gli spari sopra.....sono per VOI!" |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 22:03.