Sto cercando di elencare le complessità temporali delle operazioni di strutture dati comuni come Arrays, Binary Search Tree, Heap, Linked List, ecc. E in particolare mi riferisco a Java. Sono molto comuni, ma immagino che alcuni di noi non siano sicuri al 100% della risposta esatta. Qualsiasi aiuto, in particolare i riferimenti, è molto apprezzato.
Ad esempio, per elenchi collegati singolarmente: la modifica di un elemento interno è O (1). Come si può fare? tu HAI per cercare l'elemento prima di cambiarlo. Inoltre, per il vettore, l'aggiunta di un elemento interno è data come O (n). Ma perché non possiamo farlo in tempo costante ammortizzato utilizzando l'indice? Per favore correggimi se mi manca qualcosa.
Inserisco le mie scoperte / ipotesi come prima risposta.