PDA

Visualizza la versione completa : [C] Inserimento in vettore ordinato


cristianc
03-07-2010, 12:52
Ciao,
questa volta sono alle prese con un problema particolare. In pratica ho un vettore ordinato di n-1 elementi.
Devo fare in modo che l'elemento n-esimo richiesto dal programma venga inserito nel vettore ordinato nella posizione giusta (in base al suo valore)

Avete qualche suggerimento da dare? Ci sto pensando, ma non saprei :confused:

MdE2005
03-07-2010, 13:01
Cioè dovresti inserire un nuovo valore nell'array, giusto?

Se è così, inserisci il nuovo valore e riordina l'array: ci sono vari esempi su internet su come ordinare un'array..

Ciao :)

Ippo343
03-07-2010, 17:12
Oppure, se non vuoi fare/utilizzare una funzione per riordinare completamente il vettore, puoi fare una cosa del genere:

1) Sai per ipotesi che il vettore è ordinato.
2) Inserisci il nuovo elemento in fondo al vettore
3) Scambi il nuovo elemento con quello che lo precede finchè non arriva nella posizione giusta.

In questo modo il vettore rimane ordinato.

cristianc
03-07-2010, 17:20
Originariamente inviato da Ippo343
Oppure, se non vuoi fare/utilizzare una funzione per riordinare completamente il vettore, puoi fare una cosa del genere:

1) Sai per ipotesi che il vettore è ordinato.
2) Inserisci il nuovo elemento in fondo al vettore
3) Scambi il nuovo elemento con quello che lo precede finchè non arriva nella posizione giusta.

In questo modo il vettore rimane ordinato.
Ippo, grazie del suggerimento :zizi: Vedrò di codificare... :ciauz:

cristianc
03-07-2010, 20:51
Ho scritto e testato il programma, e funziona :D

Grazie davvero! :zizi:

Ippo343
04-07-2010, 03:11
Di nulla ^^

Io avevo fatto così quando il mio profe mi aveva dato lo stesso problema, ma con il divieto assoluto di usare funzioni esterne, anche quelle di libreria...

Loading