Sobes.tech
Junior — Middle

Кадом намуди ҷамъоварӣ барои илова кардани унсурҳо дар маркази сохтор беҳтар аст?

sobes.tech AI

Ҷавоб аз AI

Для эфектыўнага дадання элементаў у сярэдзіну структуры ў Java, найбольш падыходная калекцыя LinkedList.

LinkedList рэалізуе двунакіраваны спіс, што дазваляе ўстаўляць элементы ў любы пункт спісу за час O(1), калі ёсць спасылка на патрэбны вузел. У адрозненне ад ArrayList, дзе ўстаўка ў сярэдзіну патрабуе зрушэння элементаў і займае O(n).

Прыклад выкарыстання LinkedList:

import java.util.LinkedList;

LinkedList<String> list = new LinkedList<>();
list.add("A");
list.add("B");
list.add("D");

// Устаўляем "C" у пазіцыю 2 (між B і D)
list.add(2, "C");

System.out.println(list); // [A, B, C, D]

Калі вам часта трэба доступ да элементаў па індэксе, улічвайце, што доступ да LinkedList — O(n), у адрозненне ад ArrayList, які мае O(1).