“Маълумотлар тузилмаси ва алгоритмлар” фанига кириш



Yüklə 40,2 Kb.
Pdf görüntüsü
tarix21.12.2023
ölçüsü40,2 Kb.
#187720
msT5IZ3BKcIBYSiuT1yaNJDSuFlE56UzRz2FWDn3



Chiziqli ma’lumotlar
tuzilmalari
TAD kafedrasi


Massivlar va vektorlar
Massivni eʼlon qilish
Eslatma
Dasturda massivni eʼlon qilish uchun uning nomini, 
elementlar sonini va ularning turini koʼrsatish lozim.
С++да
T
0
а[100]; T
0
b[100][50];
a=(a
1
,a
2
, … , a
100
) – abstrakt bosqich; 

a
1
a
2
a
100
- fizik bosqich.
bu yerda
T
0

biror bir tur; C++da massiv elementlari indeksi 0 dan boshlanadi
Fizik bosqichda translyatorlar massivni qator yoki
ustun koʼrinishida ifodalaydi.
Izoh


Ma’lumotlarni
massivda saqlashda elementlar soni oldindan
ma’lum
bo

lishi kerak.
Ayrim paytlarda massivga nechta element kiritilishi
ma’lum
bo

lmaydi va o

shanda
dinamik dasturlashdan foydalanish kerak bo

ladi. Shunday hollarda
vector
dan
foydalanish mumkin.
Vector
klassi o

zgaruvchan uzunlikdagi massiv yaratishga
yordam beradi. Vektor bu elementlari soni oldindan
ma’lum
bo

lmagan bir xil toifadagi
elementlar ketma-ketligidir. Vektorning massivdan farqi, vector uzunligi oldindan
berilmaydi va u dastur bajarilishi mobaynida o

zgarib turadi.
vector o

zgaruvchi_nomi;
Massivlar va vektorlar


vector vek;
Bu holda vektorga element kiritish quyidagicha amalga oshiriladi:

vek.push_back(7);//vector oxiriga yangi element 7 ni kiritish

vek.pop_back();//
vektor oxirgi elementini o‘chirish funksiyasi

Massivlar va vektorlar


Ro
ʼ
yxatlar
Ro’yxatning
umumiy
ko’rinishiga
misol
:
E
1
, E
2
, ..., E
n
,
(n ≥0 
bo’lib n fiksirlanmagan
). 
Ro’yxat elementlari soni dastur bajarilishi davomida o’zgarib turishi mumkin
.
Def.1.
Ro
ʼ
yxat deb bir turga tegishli bo
ʼ
lgan elementlar
ketma-ketligiga aytiladi.
Эслатм
а
Ro
ʼ
yxatni
tashkil
etuvchi
elementlar
soni
chegaralanmagan bo
ʼ
lishi mumkin.
R
o’yxatni mantiqiy tasvirlash
Oshkormas(massiv)
Oshkor(
ko’rsatkichli)
Def.1.
1.
Ro’yxatni
tashkil etuvchi elementlar soni n ga
ro’yxat
uzunligi deyiladi.


Misol. Chiziqli ro’yxat
Bog’langan ro’yxat ustida amallar

Ro’yxatga element qo’shish;

Ro’yxatdan elementni o’chirish;

Ro’yxatda elementni qidirish;

Ro’yxat elementlarini chop etish mumkin.
Eslatma: Ro’yxatning ixtiyoriy elementini o’chirish,
ixtiyoriy joyiga element qo’shish mumkin
.


Bog’langan ro’yxat elementlari mantiqiy 
tasvirlanishda yozuv(struct yoki slass) kabi ifodalanadi
.
class Node{

public
://klass ma’lumotlariga tashqaridan 
bo‘ladigan murojaatga ru
xsat berish

int info; // informatsion maydon

Node* next;// ko‘rsatkichli maydon

};

int main(){

Node *lst = NULL;// ro‘yhat boshi ko‘rsatkichi

}


Def.2
.
Agar
dastur
bajarilishi
mobaynida
tuzilma
elementlari va/yoki ular orasidagi munosabatlar
o’zgarib
tursa, u holda bunday tuzilmaga dinamik
tuzilma deyiladi
Ommaviy xizmat
ko’rsatish
turlari
stek
navbat
dek
Dinamik tuzilmalar


Navbat turlari
LIFO (Stack)
FIFO(
Queue
)
DEQ
LIFO

Last in - First out
. Stek faqat bir tomoni ochiq tuzilma.
E
n-
1

E
2
E
1
yoki
En-1
E2
E1
Yuqori chegara
Stek uchi
Quyi chegara



FIFO

First in - First out
. Navbat ikki tomoni ochiq tuzilma/

E
n-
1
E
2
E
1
чиқиш
кириш
ёки
DEQ - Double Ended Queue.
Ikkita chetga ega navbat.



Tuzilmaga yangi element 
qo’shish;

Tuzilmadan elementni
o’chirish;

Tuzilmani
bo’sh yoki bo’sh emasligini aniqlash;

Tuzilmani
to’lalikka tekshirish (agar tuzilma
massiv
ko’rinishda ifodalangan bo’lsa).
Ommaviy xizmat
ko’rsatish
turlaridagi asosiy amallar


Dek so

zi (
DEQ
- Double Ended Queue) ingliz tilidan
olingan bo

lib 2 ta chetga ega navbat degan
ma’noni
bildiradi.
Dek ustida bajariladigan amallar

Chapdan element kiritish.

O

ngdan element kiritish.

Chapdan element chiqarish.

O

ngdan element chiqarish.

Dek bo

shligini tekshirish.

Dek to

laligini tekshirish.


Mavzu bo’yicha nazorat savollari
1.
Ma’lumotlar tuzilmasi deganda nimani tushunasiz?
2.
Ma’lumotlarni tasvirlash bosqichlarini keltirib o’ting.
3.
Ma’lumotlar tuzilmasi klassifikasiyasi qanday amalga
oshiriladi?
4.
Ma’lumotlar tuzilmasini foydalanuvchi dasturidagi turlari.
5.
Qanday ma’lumotlar dinamik yoki statik turdagi ma’lumotlar
tuzilmasi deyiladi?

Yüklə 40,2 Kb.

Dostları ilə paylaş:




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