|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Member
Iscritto dal: Nov 2005
Messaggi: 151
|
[C] LinkedList - inserire elementi già in ordine
Avrei bisogno di creare una linked list la quale, dopo ogni inserimento di un nuovo nodo, risulti già ordinata. Per cui l'operazione di inserimento deve mettere il nodo già nella sua posizione corretta.
Sapete se ci sono modi efficienti per fare un'operazione del genere o magari conviene inserire tutti i nodi disordinati e poi ordinarli in seguito (al momento che servono ordinati)? tnx!
__________________
ka0s |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Jul 2006
Città: Tristram
Messaggi: 517
|
Direi che a spanne l'algoritmo più efficiente (oltre che probabilmente più semplice) è quello di effettuare l'ordinamento già in fase di inserimento: ovvero per inserire un elemento scorri la lista, salvandoti il puntatore all'elemento precedente; quando arrivi ad un elemento maggiore di quello che stai inserendo (supposto che è questa la regola di ordinamento), fai puntare il puntatore salvato all'elemento che stai inserendo, e questo all'elemento attuale della lista.
__________________
Il sole è giallo |
|
|
|
|
|
#3 |
|
Member
Iscritto dal: Nov 2005
Messaggi: 151
|
ok grazie, era l'idea che avevo anche io... solo che mi dava dei problemi perchè non tenevo conto del fatto che un elemento può finire in testa o in coda alla lista (oltre che in mezzo a due elementi). Per cui ho dovuto distinguere i tre casi... credo non ci siano altri metodi no?
Si accettano consigli
__________________
ka0s |
|
|
|
|
|
#4 | |
|
Senior Member
Iscritto dal: Jan 2006
Città: Prov.Cagliari
Messaggi: 1583
|
Quote:
__________________
MB: ASUS Prime x570-P - CPU: AMD Ryzen 9 3900x with Arctic Liquid Freezer II 240 - Memorie: G.Skill Ripjaws DDR4 2x16GB 3200 - HDs: Samsung 970 EVO plus and Crucial P2 1TB - Ali: Seasonic Focus GX-650 - Video: AMD Asus GTX770 Direct CU II - Concluso Positivamente con : M@x27, mirco2034, max x2, relativo, Mighty Max e tanti altri |
|
|
|
|
|
|
#5 | |
|
Member
Iscritto dal: Nov 2005
Messaggi: 151
|
Quote:
__________________
ka0s |
|
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Jul 2006
Città: Tristram
Messaggi: 517
|
Dipende da cosa devi fare, ma le liste puoi salvarle benissimo su degli array, piuttosto che con dei record puntati
__________________
Il sole è giallo |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 09:03.



















