Algoritmlаr, ulаrning хоssаlаri


Element o’qib olish (Get). O(1) vaqtda



Yüklə 133,94 Kb.
səhifə6/8
tarix07.01.2024
ölçüsü133,94 Kb.
#209018
1   2   3   4   5   6   7   8
Algoritmlàr, ulàrning õîssàlàri

Element o’qib olish (Get). O(1) vaqtda
Agar array indeksini bilsak, demak biz elementni darhol o’qiy olamiz. Masalan 6 sonini olish uchun arr[1] ni ishlatish kifoya.
Element qo’shish (Insert). O(n) vaqtda
Array boshiga qo’shish – unshift
Array boshiga qo’shish uchun, barcha elementlar bitta keyingi indekslarga surib chiqadi va 0 indeksga yangi elementni kiritadi.
Array ohiriga qo’shish – push
Arrayning ohirgi elementiga keladi va indeksni bittaga oshirib yangi elementni kiritadi.
Element o’chirish (Remove). O(n) vaqtda
Array boshidan o’chirish – shift
Arrayning 0 indeksini bo’shatib, keyingi indeksdagi elementlarni bitta oldingi indeksga surib chiqadi.
Array ohiridan o’chirish – pop
Arrayning ohirgi indeksini o’chiradi
Elementni o’zgartirish (Update). O(1) vaqtda
Bunda indeks ma’lum bo’lgani uchun shunchaki indeksdagi elementni yangisiga o’zgartiradi.
Elementlarni ko’rib chiqish (Traverse). O(n) vaqtda
Sikl ichida array elementlari ko’rib chiqiladi.

Linked list


Linked list — bu tugunlardan ya’ni Node’lardan iborat chiziqli tuzilma bo’lib, har bir node o’zida elementni va keyingi (ba’zan oldingi ham) node adresini ko’rsatuvchi ko’rsatkichni (pointerni) saqlaydi.
Linked list strukturasi
Dastlabki Node head deb ataladi. Head’dan keyingi node’lar o’zidan oldingi node’ning pointeri’ga bog’langan bo’ladi. Demak biz dastlabki node, ya’ni head’ni bilgan holda, pointerlar yordamida keyingi node’larga o’tib kerakli elementni topamiz. Array’da index nomerini bilib, darhol arr[index] bilan elementni o’qib olgan bo’lsak, Linked listda o’sha elementga borish uchun ungacha bo’lgan barcha elementlardan o’tib kelish kerak.
Hayotiy misolda, array – mehmonxona koridori. Xona nomerini bilgan holda darhol xonani topasiz. Linked List uy ichidagi mehmon kutadigan xona. U xonaga kirish uchun oldin uy ichiga kirish, ayvonga, dahlizga o’tish kerak.
Linked list’ning ikki ko’rinishi bor:

  • Unidirectional – Ohirgi elementdan tashqari har bir node’da faqat keyingi node uchun pointer bo’ladi. Ya’ni bir taraflama bog’langan bo’ladi.

  • Bidirectional (yoki doubly linked list) – Boshi va ohirgi elementdan tashqari har bir node’da o’zidan oldingi va o’zidan keyingi node uchun pointer bo’ladi. Ikki taraflama bog’langan bo’ladi.

Yüklə 133,94 Kb.

Dostları ilə paylaş:
1   2   3   4   5   6   7   8




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©azkurs.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin