Strutture dati comuni
Le liste che estendono AbstarctList
ovvero:
- ArrayList
- LinkedList (implementa Queue)
Gli insiemi che estendono AbstractSet
ovvero:
- HashSet
- TreeSet
- LinkedHashSet (estende HashSet)
Le mappe che estendono Abstact Map
ovvero:
- HashMap
- TreeMap
- LinkedHashMap (estende HashSet)
Come scegliere la giusta struttura dati
Come si vuole accedere alla agli elemento?
- Posizione usa
Array
oListe
- Chiave usa
Mappe
- Non importa usa
Insiemi
È importante avere un ordinamento?
- Ordine Naturale usa TreeMap o TreeSet
- Ordine di Inserimento usa ArrayList, LinkedList, LinkedHashSet o LinkedHashMap
- Ordine non importante usa HashSet o HashMap
Quali operazioni devono essere “veloci”?
- Ricerca usa HashSet o HashMap
- Aggiunta / Rimozione di elementi usa LinkedList
- Non importa ArrayList