Студопедия — Понятие стека. Операции над стеком
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Понятие стека. Операции над стеком






Стек – это последовательный список переменной длины, включение и исключение элементов из которого выполняются только с одной стороны списка, называемого вершиной стека. Другие названия стека – «магазин» и очередь, функционирующая по принципу LIFO (Last – In – First – Out – " последним пришел – первым исключается"). Примеры стека: винтовочный патронный магазин, тупиковый железнодорожный разъезд для сортировки вагонов.

Основные операции над стеком – включение нового элемента (англ. push – заталкивать) и исключение элемента из стека (англ. pop – выскакивать).

Полезными могут быть также вспомогательные операции:

· определение текущего числа элементов в стеке;

· очистка стека;

· неразрушающее чтение элемента из вершины стека, которое может быть реализовано как комбинация основных операций:

x=pop(stack0); push(stack0, x).

Для наглядности рассмотрим небольшой пример, демонстрирующий принцип включения элементов в стек и исключения элементов из стека. На рис. 14.1 изображены следующие состояния стека:

· а) пустого;

· б–г) после последовательного включения в него элементов с именами 'A', 'B', 'C';

· д, е) после последовательного удаления из стека элементов 'C' и 'B';

· ж) после включения в стек элемента 'D'.

Рис. 14.1. Включение и исключение элементов из стека

 

Cтек можно представить, например, в виде стопки книг (элементов), лежащей на столе. Присвоим каждой книге свое название, например A, B, C, D... Тогда в момент времени, когда на столе книги отсутствуют, про стек по аналогии можно сказать, что он пуст, т.е. не содержит ни одного элемента. Если же начинать последовательно класть книги одну на другую, то получим стопку книг (допустим из n книг), или получим стек, в котором содержится n элементов, причем вершиной его будет являться элемент n+1. Удаление элементов из стека осуществляется аналогичным образом, т. е. удаляется последовательно по одному элементу, начиная с вершины, или по одной книге из стопки.

Реализация стека может быть выполнена на основе массива. Кроме собственно массива необходимо дополнительно иметь переменную (назовем ее «указатель стека»), адресующую вершину стека. Под вершиной стека можно понимать либо первый свободный элемент стека, либо последний записанный. Все равно, какой из этих двух вариантов выбрать, важно впоследствии при обработке стека строго его придерживаться.

При занесении элемента в стек элемент записывается на место, определяемое указателем стека, затем этот указатель модифицируется таким образом, чтобы он указывал на следующий свободный элемент.

Операция выталкивания элемента состоит в модификации указателя стека (в направлении обратном модификации при включении) и выборке значения, на которое указывает указатель стека. После выборки элемент, в котором размещалось выбранное значение, считается свободным.







Дата добавления: 2014-11-10; просмотров: 1945. Нарушение авторских прав; Мы поможем в написании вашей работы!



Практические расчеты на срез и смятие При изучении темы обратите внимание на основные расчетные предпосылки и условности расчета...

Функция спроса населения на данный товар Функция спроса населения на данный товар: Qd=7-Р. Функция предложения: Qs= -5+2Р,где...

Аальтернативная стоимость. Кривая производственных возможностей В экономике Буридании есть 100 ед. труда с производительностью 4 м ткани или 2 кг мяса...

Вычисление основной дактилоскопической формулы Вычислением основной дактоформулы обычно занимается следователь. Для этого все десять пальцев разбиваются на пять пар...

Факторы, влияющие на степень электролитической диссоциации Степень диссоциации зависит от природы электролита и растворителя, концентрации раствора, температуры, присутствия одноименного иона и других факторов...

Йодометрия. Характеристика метода Метод йодометрии основан на ОВ-реакциях, связанных с превращением I2 в ионы I- и обратно...

Броматометрия и бромометрия Броматометрический метод основан на окислении вос­становителей броматом калия в кислой среде...

Виды нарушений опорно-двигательного аппарата у детей В общеупотребительном значении нарушение опорно-двигательного аппарата (ОДА) идентифицируется с нарушениями двигательных функций и определенными органическими поражениями (дефектами)...

Особенности массовой коммуникации Развитие средств связи и информации привело к возникновению явления массовой коммуникации...

Тема: Изучение приспособленности организмов к среде обитания Цель:выяснить механизм образования приспособлений к среде обитания и их относительный характер, сделать вывод о том, что приспособленность – результат действия естественного отбора...

Studopedia.info - Студопедия - 2014-2024 год . (0.012 сек.) русская версия | украинская версия