Ho due elenchi di oggetti e vorrei rimuovere le istanze da un elenco che è presente in un altro elenco.Rimozione di duplicati da un elenco confrontandolo con un altro elenco
ad es. Ho seguito due liste e suppongo che ogni lettera rappresenti l'oggetto.
Elenco elencoA = {A, B, C, D, E, F, G, H, I, J}
Elenco elencoB = {D, G, K, P, Z}
ora, chiaramente elencoB ha D e G, che ci sono su elencoA troppo quindi voglio elencoA essere come questo
elencoA = {a, B, C, e, F, H, I, J}
Can voi per favore suggerite quale sarebbe la soluzione per questo con O (n) o meno di O (n2).
Posso scorrere tutte e due le liste e rimuovere le istanze duplicate confrontandole ma voglio avere qualcosa di più efficiente.
Si può presumere che gli elenchi siano ordinati? – templatetypedef
No. L'ordine non ha importanza! –
È interessante notare che la prima idea sembra essere sempre in via di smistamento, il che ovviamente è molto ragionevole in quanto consente una soluzione di complessità lineare; tuttavia, in generale, non è nemmeno necessario che esista un ordine parziale sugli elementi :) –