Sobes.tech
Junior — Middle

Kura darbība ArrayList tiek veikta pastāvīgā laikā, neatkarīgi no saraksta lieluma?

sobes.tech AI

Atbilde no AI

ArrayList piekļuves operācija pēc indeksa (get(index)) tiek veikta pastāvīgā laikā O(1), neatkarīgi no saraksta lieluma. Tas ir tāpēc, ka ArrayList ir realizēts uz masīva bāzes, un elementi tiek glabāti nepārtrauktā atmiņas apgabalā, kas ļauj tieši piekļūt elementam pēc tā indeksa.

Piemērs:

ArrayList<String> list = new ArrayList<>();
list.add("ābols");
list.add("banāns");
String auglis = list.get(1); // Iegūt "banāns" elementu O(1) laikā

Citas operācijas, piemēram, ievietošana vai dzēšana vidū, prasa elementu pārvietošanu un tiek veiktas lineārā laikā O(n).