Ciao,
ho una lista di nodi che voglio ordinare in base alla data. Utilizzo l'interfaccia IComparer e il metodo Compare per questo e tutto funziona.
La difficoltà risiede nel fatto che alcuni nodi possono non avere data. In tal caso la data verrebbe reperita successivamente calcolandola come "media" del nodo precedente e successivo. Quindi l'ordine è rilevante: non posso semplicemente spostare in coda alla lista i nodi senza data, ma la loro posizione dovrebbe rimanere inalterata, mentre i nodi con data dovrebbero essere ordinati fra loro
Con un esempio:
Nodo 1: 10/02
Nodo 2: -
Nodo 3: 15/03
Nodo 4: 24/02
Dovrebbe generare:
Nodo 1: 10/02
Nodo 2: -
Nodo 4: 24/02
Nodo 3: 15/03
Il Nodo 2 mantiene la posizione e il nodo 4 viene spostato prima del nodo 3.
Durante il confronto, nel caso una delle due date sia nulla, ritorno "0" nel metodo Compare. Vorrei insomma specificare che se una data e' nulla "mantieni l'ordine attuale". Purtroppo pero' questa indicazione non sembra corretta, in quanto ottengo un ordnamento non come quello previsto. Qui il codice:
Sapreste indicarmi come modificare le condizioni in modo opportuno o eventualmente una soluzione alternativa in grado di ordinare i nodi come desiderato?
Grazie