Алгоритъм, който реализира стек със стандартните push и pop функции и допълнителната функция min в
И така, оценката на времето за работа на функцията push, pop и min е O (1).
Крайностите не се променят често. Всъщност минимумът може да се промени само при добавяне на нов елемент.
Едно решение е да се сравнят добавените елементи с минималната стойност. Когато минималната стойност (minValue) бъде премахната от стека, трябва да "претърсите" целия стек в търсене на нов минимум. За съжаление това нарушава ограничението по време на изпълнение O (1).
Ако проследим минимума във всяко състояние, тогава лесно можем да разпознаем минималния елемент. Например, можете да запишете текущия минимален елемент за всеки възел.След това, за да намерите min, е достатъчно да "натиснете" отгоре и да видите кой елемент е минималният.