allora oggi dovrei , avendo un array monodimensionale, ordinato , prendere i valori in un array e stamparli a vidio
i valori tutta via non possono essere doppioni, quindi dovrei appunto eliminarli " o come pensavo io sovrascriverli"
Unica cosa e che nn posso usare nessuna variabile temporanea , ne array ma devo lavorare in place(lo scritto bene??)
il fatto è che se io ho A {3 3 5 6 7 7 8 9 9 }
quello che dovrei avere successivamente è A{3 5 6 7 8 9 }
//* funzione *//
il fatto che non funziona xche se ho quest' arraycodice:void eliminazione_duplicati (int *array1D, int *size, int flag) { int i=0; for(i=0;i<*size;i++) { if(i<1) { array1D[i]=array1D[0]; } if((array1D[i]==array1D[i-1]) && (i>0) && (array1D[i]!=array1D[i+1])) { flag++; array1D[i]=array1D[i+1]; *size=*size-flag; } if (array1D[i]!=array1D[i+1]) { flag++; }
A { 0 3 5 5 7 9 9 }
mi rida ...
A { 0 3 5 7}
oppure
Array= {[3][3][4][6][6][9][9]}
mi restituisce
Array= {[3][4][6][6]}
e mi ignora i 2 nove ..... xche ?

Rispondi quotando