View Full Version : [Java]Ordinare una lista
Ho un esercizio in cui mi chiede di ordinare una lista, doppiamente linkata e semplicemente linkata...
Non ho idea di come fare:
La cosa piu logica è creare un altra lista e fare un inserimento ordinato...
ma nell'esercizio mi chiede proprio di ordinarla,
qualcuno ha qualche idea o mi puo postare un po di codice?
Ci possono essere diversi modi...il più semplice è scambiare il campo informazioni fra due elementi delle lista...
Hai presente il bubblesort (giusto per citarne uno) ? Basta applicarlo sulla lista, pari pari...nello scambio andrai a scambiare il campo informazioni dei due elementi della lista. Questo è valido per le liste sia singolarmente che doppiamente linkate.
Un'altra possibilità è andare a scambiare i riferimenti agli elementi...sempre applicando il solito algoritmo di ordinamento, quando andrai ad effettuare lo scambio devi scambiare i riferimenti all'elemento successivo fra i due elementi da scambiare. Per una lista doppiamente linkata devi scambiare anche i riferimenti all'elemento precedente.
grazie mille...
era cosi facile e non mi era venuto in mente acc...
facevo un casino per nulla
mercury841
04-07-2007, 11:38
potresti usare il metodo sort sulla lista, però devi creare una classe che implementa l'interfaccia Comparator.
ciao
potresti usare il metodo sort sulla lista, però devi creare una classe che implementa l'interfaccia Comparator.
Credo che debba fare un esercizio sulle liste implementate a mano e non tramite la libreria di Java ;)
nuovoUtente86
04-07-2007, 14:40
potresti usare il metodo sort sulla lista, però devi creare una classe che implementa l'interfaccia Comparator.
ciao
In raltà per fare un confronto Comparable lo deve implementare cmq almeno che il Nodo con contenga al suo intern campi noti come int o stringhe e in tal caso con una get() esegue il confronto sui tipi base.
Puo far implementare alla list l' interfaccia Collection e Iterable
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.