Junior — Middle
Ինչպե՞ս է կատարվում տարր ավելացնելը զանգվածի մեջ միջինում՝ ArrayList կառուցվածքում։
sobes.tech AI
Պատասխան AI-ից
Java-ի ArrayList տվյալների կառուցվածքում միջին մասում տարր ավելացնելը կատարվում է հետևյալ կերպ.
- Ստուգվում է, արդյոք ներքին զանգվածում կա բավարար տեղ նոր տարրի համար: Եթե ոչ, զանգվածը մեծացվում է (հաճախ՝ պատճենելով ավելի մեծ չափի նոր զանգվածի մեջ):
- Բոլոր տարրերը, սկսած տեղադրման դիրքից մինչև վերջ, տեղափոխվում են մեկ դիրք աջ, որպեսզի տեղ ազատվի:
- Նոր տարրը տեղադրվում է ազատ տեղում:
Կոդի օրինակ:
ArrayList<String> list = new ArrayList<>();
list.add("A");
list.add("B");
list.add("D");
// Ավելացնել "C" դիրքում 2 (հաշվարկը սկսած 0-ից)
list.add(2, "C");
System.out.println(list); // Տպում է [A, B, C, D]
Կարևոր է հասկանալ, որ միջին մասում ArrayList-ում ավելացումը օպերացիա է, որի բարդությունը linearly է O(n), քանի որ անհրաժեշտ է տեղափոխել տարրերը։