栈及其应用(后缀表达式)、将栈内元素升序排列以及用双栈实现队列

本文介绍了栈的基本操作和特性,包括生成、判断栈满、压栈、出栈等。讨论了栈在算术表达式计算中的应用,特别是中缀转后缀表达式和后缀表达式的求值过程。还提出了使用两个栈来实现栈内元素的升序排列。最后,阐述了如何利用两个栈模拟队列的入队和出队操作。
摘要由CSDN通过智能技术生成

1.栈介绍

栈(stack)又称堆栈,其限制是仅允许在表的一端进行插入和删除操作。人们把此段成为栈顶,栈顶的第一个元素被称为栈顶元素,相对的,把另一端称为栈底元素。向一个栈插入新元素又称为进栈或入栈,它是把该元素放到栈顶元素上面,使之成为新的栈顶元素;从一个栈删除元素又称为出栈或退栈,它是把栈顶元素删除掉,使其下面相邻的元素成为新的栈顶元素。由于堆栈数据结构只允许在一端进行操作,因而按照后进先出(LIFO,Last In First Out)的原理运作。

操作集:长度为MaSize的堆栈 S∈Stack,堆栈元素item∈ElementType

1)、Stack CreateStack(int MaxSize): 生成空堆栈,其最大长度为MaxSize;

2)、int IsFull(Stack S, int MaxSize): 判断堆栈S是否已满;

3)、void Push(Stack S, ElementType item):将元素item压入栈;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值