determinare la dimensione finale del vostro dell'array modificato . Rimozione di un unico indice si riduce la dimensione della matrice risultante da 1 :
int newSize currentArraySize = - 1 ;
2
creare un nuovo array dinamico che può contenere tutti gli altri numeri interi in la vecchia matrice. Utilizzare la nuova dimensione per fare questo :
int * newArray = new int [ newSize ] ;
3
Creare contatori per indici in entrambi i vecchi e nuovi array . Questi saranno incrementati separatamente come si copia il contenuto della vecchia serie nella nuova :
oldArrayIndex int = 0;
newArrayIndex int = 0;
4
Traverse entrambi gli array :
per ( oldArrayIndex = 0; oldArrayIndex < currentArraySize ; + + oldArrayIndex ) per
{
//codice da copiare va qui
}
5 Copiare i dati
dal vecchio array al nuovo , incrementando contatore del nuovo array con bancone della vecchia serie fino a raggiungere l'indice da eliminare. Quando si raggiunge l'indice di cancellare , non copiare i dati e non incrementare il contatore nuovo array. Usando il ciclo for dall'alto :
per ( oldArrayIndex = 0; oldArrayIndex < currentArraySize ; + + oldArrayIndex ) per
{
se ( oldArrayIndex = indexToDelete ! )
{
newArray [ newArrayIndex ] = oldArray [ oldArrayIndex ] ;
+ + newArrayIndex ;
}
}
Programmazione © www.354353.com