Алгоритмы и структуры данных. Лекция 4. Стек на Python
Принципы программирования: стек и куча: что это такое?
С каждым годом мы применяем для программирования всё более продвинутые языки, позволяющие писать меньше кода, но получать нужные нам результаты. Однако всё это не проходит даром для разработчиков. Так как программисты всё реже занимаются низкоуровневыми вещами, уже никого не удивляет ситуация, когда разработчик не вполне понимает, что означают такие понятия, как куча и стек. Что это такое, как происходит компиляция на самом деле, в чём разница между динамической и статической типизацией... К сожалению,...
#4 Стек vs Куча
Кратко про основные различия (этого ответа достаточно на собеседовании): 🟰 Стек работает быстрее, потокобезопасен и имеет фиксированный размер. Управляется ОС. Хранит локальные переменные и аргументы функций. 💩 Память в куче динамически расширяемая и требует ручного управления или участия сборщика мусора. Может хранить глобальные переменные и ссылки (указатели). 🟰 Выделение памяти в стеке последовательно и фиксировано на этапе компиляции, и нельзя изменять размер стека после начала выполнения программы...