Per esempio, se ho una listaIn python, in che modo si trova efficientemente il numero maggiore di numeri consecutivi in un elenco che non è necessariamente adiacente?
[1,4,2,3,5,4,5,6,7,8,1,3,4,5,9,10,11]
Questo algoritmo deve restituire [1,2,3,4,5,6,7,8,9,10,11].
Per chiarire, l'elenco più lungo deve essere eseguito in avanti. Mi stavo chiedendo quale sia un modo algoritmicamente efficiente per farlo (preferibilmente non O (n^2))?
Inoltre, sono aperto a una soluzione non in python poiché l'algoritmo è ciò che conta.
Grazie.
perché non '[1,2,3,4,5,6,7,8 , 9,10,11] '.Non vedo ragioni per cui questi numeri non siano inclusi in quanto non devono essere adiacenti. – Serdalis
Mi dispiace, mio errore. Grazie per la correzione. – dangerChihuahua007
La sequenza consecutiva più lunga può iniziare con un numero diverso da 1? –