Stavo esaminando alcune delle complessit'a degli algoritmi di Big-O generali per diverse strutture di dati e mi chiedevo quale sarebbe stato il ArrayList
di Java .
Dato che tendo a default a ArrayList
nel mio codice Java quando ho bisogno di un List
( a meno che non sappia di aver bisogno di qualche funzionalità aggiuntiva ), mi chiedevo quali vantaggi ci sarebbero stati se invece ho usato un'implementazione ( presumo ben implementata ) di un albero rosso-nero.
Poiché ArrayList
è supportato da Array
, suppongo che sia considerato come Array
o Singly-Linked List
in base al sito Web collegato. Se ciò è vero, sembrerebbe che un'implementazione Albero rosso-nero possa utilizzare una struttura dati "predefinita" migliore.
Quali sarebbero i vantaggi / svantaggi dell'utilizzo di un albero rosso-nero al posto di ArrayList? ( e una domanda secondaria di accompagnamento, che cosa sarebbe ArrayList
da prendere in considerazione nel Algorithm Complexities sito web? )