Punto informatico Network
Login Esegui login | Non sei registrato? Iscriviti ora (è gratuito!)
Username: Password:
  • Annuncio Pubblicitario

[C] Trasformare una Lista Concatenata

Il forum per tutti i developer. Leggere attentamente il regolamento di sezione prima di postare.

[C] Trasformare una Lista Concatenata

Messaggioda cisoman » sab dic 20, 2003 4:58 pm

Dovrei risolvere questo problema:
devo modificare le funzioni di una lista concatenata in modo che la lista diventi circolare(in pratica che il successivo dell' ultimo elemento sia il primo). In particolare devo scrivere una function che scriva il contenuto della lista a partire da un elemento arbitrario. Scrivetimi anche mail. Se volete vedere anche la lista da modificare, si trova in questo sito... http://www-dft.ts.infn.it/%7Epastor...unti/linklist.c.

Non so da dove partire, qualcuno può aiutarmi?
Avatar utente
cisoman
Neo Iscritto
Neo Iscritto
 
Messaggi: 9
Iscritto il: sab dic 20, 2003 4:48 pm

[C] Trasformare una Lista Concatenata

Messaggioda cisoman » sab dic 20, 2003 4:58 pm

Dovrei risolvere questo problema:
devo modificare le funzioni di una lista concatenata in modo che la lista diventi circolare(in pratica che il successivo dell' ultimo elemento sia il primo). In particolare devo scrivere una function che scriva il contenuto della lista a partire da un elemento arbitrario. Scrivetimi anche mail. Se volete vedere anche la lista da modificare, si trova in questo sito... http://www-dft.ts.infn.it/%7Epastor...unti/linklist.c.

Non so da dove partire, qualcuno può aiutarmi?
Avatar utente
cisoman
Neo Iscritto
Neo Iscritto
 
Messaggi: 9
Iscritto il: sab dic 20, 2003 4:48 pm

Messaggioda Zane » sab dic 20, 2003 5:56 pm

Per favore modifica il messaggio per renderlo consono alle regole del forum "programmazione". [}:)][}:)]

Nn è difficile: se la lista è una struttura composta da ELEMENTO & p_SUCCESSIVO, basta che cotrolli se p_SUCCESSIVO punta a NULL: se è così setti p_SUCCESSIVO=testa_della_lista.

Specularmente, chiudi la lista anche dalla testa.
Avatar utente
Zane
MLI Hero
MLI Hero
 
Messaggi: 7935
Iscritto il: lun ago 05, 2002 9:36 am
Località: Ferrara


Messaggioda Baltak » sab dic 20, 2003 6:01 pm

<blockquote id="quote"><font size="1" face="Verdana, Arial, Helvetica" id="quote">citazione:<hr height="1" noshade id="quote"><i>Messaggio inserito da Zane</i>
<br />Per favore modifica il messaggio per renderlo consono alle regole del forum "programmazione". [}:)][}:)]
<hr height="1" noshade id="quote"></blockquote id="quote"></font id="quote">
tranquillo, c'è il "fesso" che fa il lavoro per gli altri
Avatar utente
Baltak
Membro Ufficiale (Gold)
Membro Ufficiale (Gold)
 
Messaggi: 3585
Iscritto il: sab lug 12, 2003 12:42 pm
Località: Campania

Messaggioda cisoman » sab dic 20, 2003 8:26 pm

<font color="black"></font id="black">inanzitutto grazie per l'aiuto...comunque io so che nella lista l'ultimo elemento deve puntare al primo,ma nn comprendo come e in che modo devo aggiungere o modificare la lista.<font face="Andale Mono"></font id="Andale Mono">
Avatar utente
cisoman
Neo Iscritto
Neo Iscritto
 
Messaggi: 9
Iscritto il: sab dic 20, 2003 4:48 pm

Messaggioda Zane » sab dic 20, 2003 9:19 pm

Te l'ho appena spiegato: <blockquote id="quote"><font size="1" face="Verdana, Arial, Helvetica" id="quote">citazione:<hr height="1" noshade id="quote">
controlli se p_SUCCESSIVO punta a NULL: se è così setti p_SUCCESSIVO=testa_della_lista. Specularmente, chiudi la lista anche dalla testa.
<hr height="1" noshade id="quote"></blockquote id="quote"></font id="quote">Cosa nn è chiaro?
Avatar utente
Zane
MLI Hero
MLI Hero
 
Messaggi: 7935
Iscritto il: lun ago 05, 2002 9:36 am
Località: Ferrara

Messaggioda cisoman » dom dic 21, 2003 6:13 am

Quindi se ho capito bene mi basta scrivere all'inizio del programma p_sucessivo=testa_della_lista...non mi è chiaro perché avevo letto da qualche parte che dovevo settare l'ultimo elemento in maniera che punti al primo...cosa che essendo alle prime armi non sono in grado di fare...grazie comunque
Avatar utente
cisoman
Neo Iscritto
Neo Iscritto
 
Messaggi: 9
Iscritto il: sab dic 20, 2003 4:48 pm

Messaggioda Xerex » dom dic 21, 2003 2:10 pm

<blockquote id="quote"><font size="1" face="Verdana, Arial, Helvetica" id="quote">citazione:<hr height="1" noshade id="quote"><i>Messaggio inserito da cisoman</i>
<br />....non mi è chiaro perché avevo letto da qualche parte che dovevo settare l'ultimo elemento in maniera che punti al primo....
<hr height="1" noshade id="quote"></blockquote id="quote"></font id="quote">

E' esattamente quello che ti ha detto di fare lo Zane...

non so esattamente come debba funzionare quella lista, ma se non tieni da qualche parte, perlomeno, il valore del puntatore iniziale della lista, altrimenti non avresti più modo di inserire o cancellare un'elemento in modo oridinato...
Avatar utente
Xerex
Membro Ufficiale (Gold)
Membro Ufficiale (Gold)
 
Messaggi: 5948
Iscritto il: lun ago 05, 2002 9:36 am
Località: Parma(Pr)

Messaggioda cisoman » lun dic 22, 2003 1:04 am

Il link giusto è questo

http://www-dft.ts.infn.it/%7Epastore/DI ... linklist.c

Il fatto è che avrei bisogno che qualcuno mi desse la lista intera con la modifica e che mi scrivesse cosa è stato fatto cosi' che io riesca a capire meglio...
Avatar utente
cisoman
Neo Iscritto
Neo Iscritto
 
Messaggi: 9
Iscritto il: sab dic 20, 2003 4:48 pm

Messaggioda Zane » lun dic 22, 2003 8:24 am

Beh, dai, adesso nn esageriamo, eh!! [8)][8)]
Avatar utente
Zane
MLI Hero
MLI Hero
 
Messaggi: 7935
Iscritto il: lun ago 05, 2002 9:36 am
Località: Ferrara

Messaggioda Ices_Eyes » lun dic 22, 2003 10:39 am

Tutto ciò che devi fare è:
finchè(puntatore a successivo diverso da null) spostati al successivo;
puntatore al successivo = testa della lista;

Questo è pari pari il codice C che ti serve. Tu traducilo, e credo tu sia capace se stai facendo le liste, e ci sei.
Ciao
Avatar utente
Ices_Eyes
Membro Ufficiale (Gold)
Membro Ufficiale (Gold)
 
Messaggi: 5543
Iscritto il: ven ott 24, 2003 10:37 am
Località: Prov. di Venezia

Messaggioda Zane » lun dic 22, 2003 10:47 am

Giustissimo (stessa cosa che ho detto io [:0)])
Avatar utente
Zane
MLI Hero
MLI Hero
 
Messaggi: 7935
Iscritto il: lun ago 05, 2002 9:36 am
Località: Ferrara

Messaggioda cisoman » lun dic 22, 2003 1:28 pm

Lo so che esagero...però è molto importante per me.comunque vi ringrazio per la disponibilità[^]
Avatar utente
cisoman
Neo Iscritto
Neo Iscritto
 
Messaggi: 9
Iscritto il: sab dic 20, 2003 4:48 pm

Messaggioda Zane » lun dic 22, 2003 2:58 pm

Se è così importante, ti segnalo il nostro sito di consulenza informatica a pagamento, www.zanezane.net/pro , che in poche ore potrebbe prepararti la cosa....
Avatar utente
Zane
MLI Hero
MLI Hero
 
Messaggi: 7935
Iscritto il: lun ago 05, 2002 9:36 am
Località: Ferrara


Torna a Programmazione

Chi c’è in linea

Visitano il forum: Nessuno e 4 ospiti

Powered by phpBB © 2002, 2005, 2007, 2008 phpBB Group
Traduzione Italiana phpBB.it

megalab.it: testata telematica quotidiana registrata al Tribunale di Cosenza n. 22/09 del 13.08.2009, editore Master New Media S.r.l.; © Copyright 2008 Master New Media S.r.l. a socio unico - P.I. 02947530784. GRUPPO EDIZIONI MASTER Spa Tutti i diritti sono riservati. Per la pubblicità: Master Advertising