immagino che la sequenza di numeri non sia ordinata, se no la risposta č abbastanza banale...

cosa vuol dire "tempoO (n lg n) "??

al di lā di questo ecco una proposta:
codice:
1: leggo il primo numero e lo metto in memoria
2: leggo il successivo
     2a: se č maggiore di quello in memoria torno al 2
     2b: se č minore di quello in memoria e non l'ho giā scritto lo sostituisco in memoria
     2c: torno al punto 2
3: scrivo il valore in memoria
4: torno al punto 1