130
for (int i = 2; i<6; i++) push(&top, i);
while (top)
cout << pop(&top) << ' ';
return 0;
}
//-----------------------------------------------
// Стекті бастапқы қалыптастыру
Node * fi rst (int d){
Node *pv = new Node;
pv->d = d;
pv->p = 0;
return pv;
}
//-----------------------------------------------
// Стекке орналастыру
void push(Node **top, int d){
Node *pv = new Node;
pv->d = d;
pv->p = *top;
*top = pv;
}
//-----------------------------------------------
// Стектен таңдау
int pop(Node **top){
int temp = (*top)->d;
Node *pv = *top;
*top = (*top)->p;
delete pv;
return temp;
}
Программаның жұмыс істеу нəтижесі:
5 4 3 2 1
Кезектер
Кезек – бұл элемент қосу тізімнің бір басынан,
ал таңдау екінші басынан
орындалатын бірбағытты тізімнің дербес түрі. Кезектерге қолданылатын басқа
опрерациялар анықталмаған. Таңдау кезінде элементті
кезектен алып тастай-
ды. Кезек FIFO (fi rst in – fi rst out, бірінші болып енеді – бірінші болып шығады)
қызмет көрсету принципін жүзеге асырады. Мұның жұмыс істеу принципін
кезекте бірнеше сағат тұру арқылы көзге жеңіл елестетуге болады.
Програм-
малауда кезектердің қолданылу мысалдары: модельдеу, операциялық жүйенің
есептерін диспетчерлеу, буферленген енгізу/шығару əрекеттері.
131
Төмендегі программа 5 бүтін саннан тұратын кезек құрады жəне
соларды
экранға шығарады. Кезектің соңына орналастыру функциясы –
Достарыңызбен бөлісу: