Test gift and xml


Download 1.72 Mb.
bet26/34
Sana30.04.2023
Hajmi1.72 Mb.
#1413071
1   ...   22   23   24   25   26   27   28   29   ...   34
Bog'liq
Algaritm umumiy

Tnode (int val): pnext(0), value(val) {}
};

  • Ikki bog’lamli ro’yxatning har bir elementida ko’rsatkich maydoni ikki qismdan iborat bo’ladi. Birinchisi o’zidan oldingi elementni (teskari), ikkinchisi navbatdagi elementni ko’rsatadi (to’g’ri).

  • Odatda, ikki bog’lamli ro’yxatlarni, elementlari soni bir xil bo’lgan, faqat o’zaro teskari ketma-ketlikda yozilgan ikkita bir bog’lamli ro’yxat sifatida qarash mumkin.

  • Ikki bog’lamli ro’yxatning tavsiflanishi:

struct Tnode {
T value;
Tnode* pnext;
Tnode* pprev;
Tnode (T val): pnext(0), pprev(0),value(val) {}
};
52. Dinamik ma’lumotlar tuzilmasi: Ro’yxatlar ustida bajariladigan amallar (Adding data, Data change)ни мисоллар ёрдамида тушунтиринг.
Bog’langan ro’yxatlar ustida bajariladigan amallar

  • Ro’yxatga yangi element qo’shish;

  • Bog’langan ro’yxat elementlari mantiqiy tasvirlanishda yozuv kabi ifodalanadi.

Ro'yxatga element qo'shish:
void addList (TNode **pphead, int val)
{
TNode **pp = pphead, *pnew;
pnew = new TNode(val);
pnew->pnext = *pp;
*pp = pnew;
}
Ro‘yxat elementini o'chirish:
void deleteList(TNode *phead) {
if(phead)
{
deleteList(phead->pnext);
if(phead)
delete phead;
}
}
Ro'yhatda elementni qidirish
Tnode* Find(Tnode *phead, int x)
{
Tnode *p=phead;
while(p)
{
if (p->value==x) return p;
else p = p->pnext;
}
return 0;
}

Download 1.72 Mb.

Do'stlaringiz bilan baham:
1   ...   22   23   24   25   26   27   28   29   ...   34




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