Junior
Класси LinkedList дар Java кадом идеяро амалӣ мекунад?
sobes.tech AI
Ҷавоб аз AI
LinkedList иҳроҷ мекунад икки томонлама боғланган рўйхатни (doubly linked list).
- Ҳар бир элемент (узел) аввалги ва кейинги элементларга ҳаволаларни ўз ичига олади.
- У биринчи (head) ва охирги (tail) элементларга ҳаволаларни сақлайди.
- У рўйхатнинг бошида, охирида ва ўртасида элементларни самарали қўшиш ва ўчиришга имкон беради (агар узелга ҳавола бўлса, O(1) мураккабликда, ёки индекс бўйича излашда O(n)).
- Индекс бўйича тасодифий кириш учун самарали эмас (тартибли ўтказишни талаб қилади, мураккаблик O(n)).
ListваDequeинтерфейсларини амалга оширади, бу уни рўйхат, стека ёки навбат сифатида ишлатишга имкон беради.
ArrayList билан таққослаш:
| Хусусият | LinkedList | ArrayList |
|---|---|---|
| Ички тузилма | Икки томонлама боғланган рўйхат | Динамик массив |
| Қўшиш/ўчириш | O(1) (бошида/охирида ёки узелга ҳавола орқали), O(n) (индекс бўйича) | O(1) (охирда), O(n) (бошида/ўртада) |
| Тасодифий кириш | O(n) | O(1) |
| Хотирадан фойдаланиш | Кўпроқ (ҳаволаларни сақлайди) | Камроқ (агар кенгайтириш керак бўлмаса) |