МЕНЮГостевая книга Форум |
КАК ОРГАНИЗОВАТЬ СТЕКПерво-наперво разберемся, а что же такое стек? Стек это такая гипотетическая структура, которую можно объяснить на примере.
Пример: Все знают, как выглядит штанга. На
нее одеваются блины. Но когда штангу не поднимают - блины надо куда-то
ложить. Для этого есть специальные держатели - типа штырей, торчащих
вверх. На них одевают диски. Главное - что если мы положили туда диски
весом 1,2,5,10 и 20 килограмм, то первым снимется какой? Конечно 20
килограмм - который мы положили последним. Ведь остальные ПОД ним.
Вторым снимется 10 килограмм и так далее. Или - более кратко -
первым снимается тот, который положили последним. По английски это
кратко зовется "LIFO", что означает "последний пришел - первый вышел"
Когда мы положили в стек 3 - это число было там одно. Потом мы положили
туда четыре - оно закрыло число 3. А число 5 закрыло число 4. Поэтому
если мы попытаемся достать оттуда значение, достанется именно число
5. Следующим достанется число 4, а потом 3.
А зачем вообще нужен стек? Ну например для вычисления выражений. Например, как вычисляет выражение 1+2*4+3 человек? Умножает 2 на 4, добавляет 1, а потом добавляет 3. А компьютер?
Вот вам одно из применений стека - вычисление математических выражений. Математический сопроцессор в любом современном компьютере именно так и работает (правда там стек не бесконечный - туда только 8 чисел помещается). |