Инструменты пользователя

Инструменты сайта


examination:ccc:question3

Вопрос №3. Динамические типы данных. Стеки.

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

1. top→null стек пуст

2. top→nina

3. top→ilia

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

Добавление элемента, называемое также проталкиванием (push), возможно только в вершину стека (добавленный элемент становится первым сверху). Удаление элемента, называемое также выталкивание (pop), возможно также только из вершины стека, при этом, второй сверху элемент становится верхним.

Языки программирования высокого уровня используют стек вызовов для передачи параметров при вызове процедур.

examination/ccc/question3.txt · Последние изменения: 2014/01/15 08:13 (внешнее изменение)