十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
什么是栈呢?栈是一种采用“后进先出”策略的数据结构类型。其本质意义也是线性表的一种,不过是一种特殊的线性表。栈顶记做,top,栈底记做,bottom。
成都创新互联公司专注为客户提供全方位的互联网综合服务,包含不限于成都做网站、网站建设、永顺网络推广、成都小程序开发、永顺网络营销、永顺企业策划、永顺品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们最大的嘉奖;成都创新互联公司为所有大学生创业者提供永顺建站搭建服务,24小时服务热线:18980820575,官方网址:www.cdcxhl.com
栈有一个非常非常重要的一个特点:只允许在栈顶进行数据元素的插入或删除操作。根据这一特点我们可知,栈基本上只有两种操作,一是插入操作,另一个是删除操作。栈的插入操作也称为:进栈,压栈,入栈。栈的删除操作也称为,出栈,弹栈。英文记做,push(压栈),pop(弹栈)。“后进先出”策略英文记为,“LIFO”,Last In First Out。
栈的抽象数据类型,摘自书本。如下:
ADT 栈 (stack) Data 同线性表。元素具有相同的类型,相邻元素具有前驱和后继关系。 Operation InitStack ( *S ) : 初始化操作,建立一个空栈S。 DestroyStack ( *S ) : 若栈存在,则销毁它。 ClearStack ( *S ) : 将栈清空。 StackEmpty ( S ) : 若栈为空,返回true,否则返回false。 GetTop ( S, *e ) : 若栈存在且非空,用e返回S的栈顶元素。 Push ( *S, e ) : 若栈S存在,插入新元素e到栈S中并成为栈顶元素。 Pop ( *S, *e ) : 删除栈s中栈顶元素,并且e返回其值。 StackLength ( S ) : 返回栈S的元素个数 endADT