知识大全 栈和队列 - 栈 - 栈的定义及基本运算
Posted 元素
篇首语:学向勤中得,萤窗万卷书。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 栈和队列 - 栈 - 栈的定义及基本运算相关的知识,希望对你有一定的参考价值。
栈和队列是两种特殊的线性表 它们的逻辑结构和线性表相同 只是其运算规则较线性表有更多的限制 故又称它们为运算受限
的线性表 栈和队列被广泛应用于各种程序设计中
栈的定义及基本运算
栈的定义
栈(Stack)是限制仅在表的一端进行插入和删除运算的线性表
( )通常称插入 删除的这一端为 栈顶 (Top) 另一端称为 栈底 (Bottom)
( )当表中没有元素时称为 空栈
( )栈为后进先出(Last In First Out)的线性表 简称为 LIFO表
栈的修改是按后进先出的原则进行 每次删除( 退栈 )的总是当前栈中 最新 的元素 即最后插入( 进栈 )的元素 而最先
插入的是被放在栈的底部 要到最后才能删除
>
【示例】元素是以a a … a n 的顺序进栈 退栈的次序却是a n a n … a
栈的基本运算
( )InitStack(S)
构造一个空栈S
( )StackEmpty(S)
判栈空 若S为空栈 则返回TRUE 否则返回FALSE
( )StackFull(S)
判栈满 若S为满栈 则返回TRUE 否则返回FALSE
注意
该运算只适用于栈的顺序存储结构
( )Push(S x)
进栈 若栈S不满 则将元素x插入S的栈顶
( )Pop(S)
退栈 若栈S非空 则将S的栈顶元素删去 并返回该元素
( )StackTop(S)
取栈顶元素 若栈S非空 则返回栈顶元素 但不改变栈的状态
cha138/Article/program/sjjg/201311/23932相关参考
栈和队列是两种特殊的线性表它们的逻辑结构和线性表相同只有其运算规则较线性表有更多的限制故又称它们为运算受限的线性表 栈的定义 栈(Stack)是限制仅在表的一端进行插入和删
第三章栈和队列 栈 栈的定义及基本运算 栈是限制仅在表的一端进行插入和删除运算的线性表又称为后进先出表(LIFO表)插入删除端称为栈顶另一端称栈底表中无元素称空栈基本运算有 )initst
链栈 栈的链式存储结构称为链栈 链栈的类型定义 链栈是没有附加头结点的运算受限的单链表栈顶指针就是链表的头指针 > 链栈的类型说明如下 typedefstructstacknode
顺序栈 栈的顺序存储结构简称为顺序栈它是运算受限的顺序表 顺序栈的类型定义 #defineStackSize//假定预分配的栈空间最多为个元素 typedefcharDataType;//
第三章栈和队列 本章介绍的是栈和队列的逻辑结构定义及在两种存储结构(顺序存储结构和链式存储结构)上如何实现栈和队列的基本运算本章的重点是掌握栈和队列在两种存储结构上实现的基本运算难点是循环队列中
定义 队列(Queue)是只允许在一端进行插入而在另一端进行删除的运算受限的线性表 > ()允许删除的一端称为队头(Front) ()允许插入的一端称为队尾(Rear) ()当队列中没有
第四章栈和队列 本章介绍了栈的定义以及栈的基本操作的实现特别介绍了栈与递归的关系以及栈和递归在问题求解中的作用本章还介绍了队列的定义队列的存储桔构队列基本操作的实现特别介绍了循环队列及其应用以及其它
知识大全 数据结构考研分类复习真题 第三章 栈和队列[12]
.在作进栈运算时应先判别栈是否_()_;在作退栈运算时应先判别栈是否_()_当栈中元素为n个作进栈运算时发生上溢则说明该栈的最大容量为_()_为了增加内存空间的利用率和减少溢出的可能性由两个栈共享
知识大全 数据结构考研分类复习真题 第三章 栈和队列[20]
利用两个栈sls模拟一个队列时如何用栈的运算实现队列的插入删除以及判队空运算请简述这些运算的算法思想【北京邮电大学 一】【东南大学一(分)】 .一个循环队列的数据结构描述如下【西北工业
知识大全 栈和队列 - 栈和队列的应用实例 - 栈的应用实例(一)
栈和队列的应用非常之广只要问题满足后进先出和先进先出原则均可使用栈和队列作为其数据结构 栈的应用 数制转换 将一个非负的十进制整数N转换为另一个等价的基为B的B进制数的问题很容易通过除B取余