8-Mavzu: Ma’lumotlarning dinamik tuzilmalari Reja


-misol (element qo‘shish)



Download 216,45 Kb.
bet6/7
Sana17.06.2021
Hajmi216,45 Kb.
#69178
1   2   3   4   5   6   7
1-misol (element qo‘shish):

Ishchi ko‘rsatkich P ko‘rsatib turgan elementdan keyingi joyga axborot maydoni X bo‘lgan yangi elementni kiritish talab qilingan bo‘lsin.

Buning uchun:

  1. yangi element hosil qilinadi:

Q = GetNode;

  1. hosil qilingan elementning axborot maydoniga X qiymat ta‘minlanadi: Info(Q) = X;

  2. olingan element qo‘shiladi:

Ptr(Q) = Ptr(P);

Ptr(P) = Q;

Bu amallar InsAfter(Q, X) protsedurasini tashkil qiladi.

2-misol (elementni o‘chirish):

Ishchi ko‘rsatkich P ko‘rsatib turgan elementdan keyingi elementni o‘chirish talab qilingan bo‘lsin.

Buni bajarish uchun quyidagi ish-harakat amalga oshirilishi zarur:


  1. o‘chiriladigan elementning ko‘rsatkichiga Q ta'minlanadi:

Q = Ptr(P);

  1. X o‘zgaruvchida o‘chiriladigan elementning axborot maydonining qiymati saqlab qo‘yiladi:

X = Info(Q);

  1. o‘chiriladigan elementning ko‘rsatkichi o‘rniga keyingi elementning ko‘rsatkichi qo‘yiladi va o‘chirish amali bajariladi:

Ptr(P) = Ptr(Q);

FreeNode(Q);

Bu amal DelAfter(P, X) protsedurasini tashkil etadi.

Yuqorida tavsiflangan o‘chirish va qo‘shish protseduralari Paskal tilida quyidagi ko‘rinishga ega bo‘ladi:



procedure InsAfter(var Q: PNode; X: Integer); var

Q: PNode; begin

New(Q);

QA.Info:=X;

QA.Next: =PA.Next;

PANext:=Q;



procedure DelAfter(var Q: PNode; var X: Integer); var

Q: PNode;

begin

Q:=PA.Next;



PA.Next:=QA.Next;

X:=QA.Info;

Dispose(Q);

end;


Ro‘yxat ustida bajariladigan amallarga doir namunaviy misollar.

  1. misol. Ro‘yxat elementlarini ketma-ket ko‘rib chiqish va ma‘lumot maydoni 4 ga teng bo‘lgan elementlarni o‘chirish talab qilinadi.

Ishchi ko‘rsatkich sifatida P o‘zgaruvchi olinadi va dastlabki holatda P=Lst. Yana bitta Q nomli ko‘rsatkich ham zarur bo‘lib, u P ning qiymati ko‘rsatayotgan elementdan bitta oldingi elementning joyini ko‘rsatib turadi. P ko‘rsatkichli elementning ma‘lumotlar maydoni 4 ga teng bo‘lsa, u o‘chirilishi kerak va buni amalga oshirish uchun Q ning qiymatidan foydalaniladi.

Q = Nil


P = Lst

While P <> Nil do If Info(P) = 4 then

If Q = Nil then Pop(Lst)

FreeNode(P)

P = Lst

Else


DelAfter(Q, X)

EndIf


Else

Q = P P = Ptr(P)

EndIf

EndWhile



  1. Download 216,45 Kb.

    Do'stlaringiz bilan baham:
1   2   3   4   5   6   7




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©www.hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish