по компютърни науки Лекции - купчина (стека)
обща информация
Стекът (комин) - е динамична структура от данни със сериен достъп. Достъп до елементите на стека, както следва, елементите от стека може да получите само в обратен ред, за да ги добавите към комина.
Примери на пакета включват:
- обикновени детски пирамида: голям пръстен, който носеше и преди, не могат да бъдат отстранени, без да махате малкото, което е бил пуснат на по-късна дата;
- железопътна линия: колата не може да бъде изхвърлен от задънената улица, а не преди това е управлявал колата, която се дължи по-късно;
- тръба с единия край спойка, където са поставени многоцветни бурета.
Последният пример е най-подходящ за концепцията за програмиране стека: взирайки се в тръбата, можем да видим, че бъчвите в тръбата там, или да видят цвета на горната барел, но ние не можем да видим, ако има бурета под върха, колко и какъв цвят са те.
стека работа е организирана на принципа на LIFO (Last първа изходяща) - последният, първа изходяща.
Елемент от тестето, която в момента може да отнеме, т.е. отгоре, наречен на върха на стека. Ако броят на елементите в стека не може да надвишава определена стойност, стека се нарича ограничен. и максимален брой елементи в него - дълбочината на стека.
Изпълнението на стека в C ++
Ето един пример, прилагането на неограничен стек от цели числа, основани на свързан списък.
Прилагане на шаблон "Stack"
Шаблон - празен за един клас, параметризирана клас. Нашата шаблон "комин" ще има един параметър - от типа на данните, от които ще се състои от комин. С помощта на шаблон е лесно да се декларират комини напълно произволни типове данни:
защото вече имаме готов клас "стек от цели числа", че е лесно да конвертирате в един модел "комин".