Реализация стеков с помощью массивов. Pinu realisatsioon massiivi abil.
Можно зафиксировать дно стека в самом низу массива (в ячейке с наибольшим индексом) и позволить стеку расти вверх массива ( к ячейке с наименьшим индексом). 1 Top первый элемент второй элемент ………………… maxlength последний элемент
Необходимые объявления. Deklareerimine. const int MaxN=100; //максимальное количество элементов стека //maksimaalne pinu suurus struct Stack { int Top; //Tipu index индекс вершины стека info [MaxN]; // elemendi massiiv массив элементов } ……………………… Top 1el. 2 el. MaxN
В этой реализации стек состоит из последовательности элементов (pinu koosneb elemendidest) info[Top], info[Top+1], ….., info[MaxN] Если (kui) Тор = - 1, то стек пустой (pinu on tyhi) Если (kui) Тор=MaxN, то стек полный (pinu on tais) ……………………… Top MaxN
Пример массива из 5 элементов. Индекс Тор увеличивается на 1 при операции Push и уменьшается на 1 при операции Рор. Näidis. Massiivis on 5 elemendi. Index Top suureneb ühe võrra (Push) ja väheneb ühe võrra (Pop). Тор=-1; стек пустой Тор=1; Push 25 Тор=2; Push 10 Тор=3; Push 50 Тор=2; Pop Тор=1; Pop
Описание программы. Programmi kirjeldamine. Функции (funktsioonid): -Проверка пустоты стека (kas pinu on tühi) -Добавление элемента в вершину стека (lisamine) -Удаление элемента из вершины стека (eemaldamine) -Удаление всех элементов из стека с освобождением памяти (kõikide elementide eemaldamine) - Вывод на экран содержимого стека (väljastamine ekraanile)
#include const int MaxN = 100; //elemendi kogus struct Stack { int info[MaxN]; //massiiv int Top; //tipu index } InitStack () {Top=-1;} // Tipu initsialiseerimine void Push (int andmed); //lisamine int Pop (); //elemendi valjavotmine void ClearStack() {Top=-1;} //koikide elemendi kustutamine int Peek () ; //element pinu tipus int StackEmpty() {return Top==-1;} //kas pinu on tyhi int StackFull() {return Top==MaxN-1;} //kas pinu on tais
void Push (int andm) //lisamine { //kui pinu on tais - valja if (Top==MaxN-1) {cerr
int Pop () {int temp; //kui pinu on tyhi - valja if (Top==-1) { cerr
int Peek () //element pinu tipus { //kui pinu on tyhi - valja if (Top==-1) { cerr