Халқасимон боғланган рўйхатлар - Режа
- - Бир боғламли ва икки боғламли халқасимон рўйхатлар ҳақида тушунча.
- - Уларни мантиқий тасвирлаш ва устида амаллар бажариш алгоритмлари
Ҳалқасимон рўйхатлар - Ҳалқасимон рўйхатлар оддий рўйхат каби бўлиб, фарқи шуки, унда рўйхат охири рўйхат бошига уланган бўлади. Ҳалқасимон рўйхатлар икки хил бўлади:
- Ҳалқасимон бир боғламли
- Ҳалқасимон икки боғламли
- Ҳалқасимон рўйхатлар устида бажариладиган амаллар
- элемент қўшиш
- Элемент ўчириш
- Рўйхатни кўрувдан ўтказиш
- Рўйхатни ўчириш
- Бўшликка текшириш
Ҳалқасимон бир боғламли рўйхатлар - Ҳалқасимон бир боғламли рўйхат оддий бир боғламли рўйхатдан энг сўнги элемент кўрсаткичига рўйхат боши элементи кўрсаткичи қийматини ўзлаштириш орқали хосил қилинади
Ҳалқасимон бир боғламли рўйхатни С++ да эълон қилиш - struct Node{
- int data; //информацион майдон
- Node *Next;
- };
- Node *Head=NULL;//рўйхат боши кўрсаткичи
- Node *Tail=NULL;//рўйхат охири кўрсаткичи
Ҳалқасимон бир боғламли рўйхатга элемент қўшиш - Бўш бўлган рўйхатга элементлар расмдаги каби киритилиши керак бўлсин
- 1. Янги элементни эълон қиламиз:
- Node *temp=new Node;
Алгоритм дастури - void Add(int x)
- {
- Node *temp=new Node; //янги элемент учун хотирадан жой ажратиш
- temp->Next=Head;
- temp->data=x;
- if (Head!=NULL) {
- Tail->Next=temp;
- Tail=temp;
- }
- else Head=Tail=temp;
- }
Ҳалқасимон бир боғламли рўйхат бошидан элемент ўчириш алгоритми - Қуйидаги расмда рўйхат бошидаги элементни ўчириш амали кўрсатилган
- 1- элементни ўчириш учун уни кўрсатувчи Head ни 2-элементга тўғирлаймиз
- охирги элемент, яъни Tail кўрсатаётган элементни кўрсаткич майдонини 2-элементга тўғирлаб қўямиз
- 1-элементни хотирадан ўчириб ташлаймиз.
Download Do'stlaringiz bilan baham: |