Halqasimon bir bog‘lamli ro‘yxat boshidan element o‘chirish algoritmi
səhifə 2/4 tarix 19.12.2023 ölçüsü 10,81 Kb. #187166
Reja Bir va ikki bog‘lamli ro‘yxatlar ustida amallar va ularnin-fayllar.org
Halqasimon bir bog‘lamli ro‘yxat boshidan element o‘chirish algoritmi
Quyidagi rasmda ro‘yxat boshidagi elementni o‘chirish amali ko‘rsatilgan:
1- elementni o‘chirish uchun uni ko‘rsatuvchi Head ni 2-elementga to‘g‘irlaymiz;
oxirgi element, ya’ni Tail ko‘rsatayotgan elementni ko‘rsatkich maydonini 2-elementga to‘g‘irlab qo‘yamiz;
1-elementni xotiradan o‘chirib tashlaymiz.
Element o‘chirish algoritmining C++ da dasturi
void Del(){
Node *delItem=Head;//ўчириладиган элементни белгилаб олиш
Head=Head->Next;//рўйхат бошини кейинги элементга кўчириш
Tail->Next=Head;//охирги элемент кўрсаткичини 2-элементга кўчириш
delete delItem;//рўйхат бошидаги элементни ўчириш
}
void Show()
{
Node *p=Head;
while (p!=Tail)
{
cout<
data<<" ";
p=p->Next;
}
cout<
data<
}
Halqasimon ikki bog‘lamli ro‘yxat
Halqasimon ikki bog‘lamli ro‘yxatda xar bir element ikkita ko‘rsatkichli maydonga ega bo‘lib, ular o‘zidan oldingi va keyingi elementlarga ko‘rsatkich xisoblanadi. Birinchi elementning chap ko‘rsatkichi oxirgi elementni , oxirgi elementning o‘ng ko‘rsatkichi birinchi elementni ko‘rsatadi.
Halqasimon ikki bog‘lamli ro‘yxatni C++ da e’lon qilish
struct Node
{
int info;
Node* next;// кейинги элементга кўрсаткич
Node* prev;//олдинги элементга кўрсаткич
};
Node *List=NULL, LastPtr=NULL;
Dostları ilə paylaş: