Стек

Автор: John Stephens
Дата Створення: 28 Січень 2021
Дата Оновлення: 27 Червень 2024
Anonim
КАК РАБОТАЕТ СТЕК | ОСНОВЫ ПРОГРАММИРОВАНИЯ
Відеоролик: КАК РАБОТАЕТ СТЕК | ОСНОВЫ ПРОГРАММИРОВАНИЯ

Зміст

Визначення - Що означає Stack?

Стек - це концептуальна структура, що складається з набору однорідних елементів і базується на принципі "останній у перший вихід" (LIFO). Це загальновживаний абстрактний тип даних з двома основними операціями, а саме push і pop. Натискання і попс виконуються на самому верхньому елементі, який є предметом, який останнім часом додається до стеку. Операція натискання додає елемент до стеку, тоді як операція "pop" видаляє елемент з верхнього положення. Концепція стека використовується в програмуванні та організації пам'яті в комп'ютерах.


Вступ до Microsoft Azure та Microsoft Cloud | У цьому посібнику ви дізнаєтеся, що стосується хмарних обчислень та як Microsoft Azure може допомогти вам мігрувати та вести свій бізнес із хмари.

Техопедія пояснює Стек

Стек являє собою послідовність об'єктів або елементів у форматі лінійної структури даних. Стек складається з обмеженого нижнього і всі операції проводяться у верхньому положенні. Кожного разу, коли елемент додається до стеку під час натискання, верхнє значення збільшується на одиницю, а коли елемент вискакує зі стека, верхнє значення зменшується на одиницю. Вказівник на верхнє положення стека також відомий як покажчик стека.

Стек може бути зафіксований за розміром або може мати динамічну реалізацію, коли розмір дозволяється змінювати. У випадку обмежених стеків ємності спроба додати елемент до вже повного стеку викликає виняток переповнення стека. Аналогічно, умова, коли поп-операція намагається вилучити елемент з уже порожнього стека, називається underflow.


Стек вважається обмеженою структурою даних, оскільки дозволяється лише обмежена кількість операцій. Окрім натискань та поп-операцій, деякі реалізації можуть передбачати розширені операції, такі як:

  • Peek - Перегляд найвищого елемента в стеку.
  • Дублікат - Скопіюйте значення верхнього елемента в змінну і відправте його назад у стек.
  • Swap - поміняйте місцями два найвищих елементів у стеці.
  • Обертання - переміщення найвищих елементів у стеку, як зазначено цифрою, або переміщення поворотом.

Програмна реалізація концепції стека виконується за допомогою масивів і пов'язаних списків, де верхня позиція відстежується відповідно за допомогою змінної або вказівника заголовка відповідно. Багато мов програмування надають вбудовані функції для підтримки реалізації стека.

Апаратні стеки реалізовані для розподілу пам'яті та доступу з використанням фіксованого походження та розміру. Реєстри стеків використовуються для зберігання значення вказівника стека.