第四章 栈找和队列
第四章 栈 和 队 列
4.1悦 4.1.1 栈的定义和操作 。栈的定义:栈是插入和删除只能在其一端进 行的线性表。 出栈 进栈 [例]有一线性表 (a1,a2,,a5) 栈顶 as 进栈和出栈情况。 a4 a3 a2 栈底 aj
4.1 栈 4.1.1 栈的定义和操作 ● 栈的定义:栈是插入和删除只能在其一端进 行的线性表。 a5 a3 a2 a1 a4 出栈 进栈 栈顶 栈底 [例] 有一线性表 (a1, a2, …, a5) 进栈和出栈情况
。栈的特性: ①有序性。 ②后进先出性
● 栈的特性: 有序性。 后进先出性。 ① ②
●栈的ADT描述。 ADT Stack is Data 包含栈顶位置信息的数据项 Operations Constructor Initial Values:无 Press: 堆栈初始化
● 栈的 ADT 描述。 ADT Stack is Data 包含栈顶位置信息的数据项 Operations Constructor Initial Values:无 Press: 堆栈初始化
StackEmpty Input: 无 Preconditions: 无 Press: 检查堆栈是否为空 Output: 若为空返回t,否则返回f Postconditions:无 Pop Input: 无 Preconditions: 堆栈非空 Press: 删除栈顶元素 Output: 返回被删除的栈顶元素 Postconditions 原栈顶元素被从栈中删除
StackEmpty Input: 无 Preconditions: 无 Press: 检查堆栈是否为空 Output: 若为空返回t,否则返回f Postconditions: 无 Pop Input: 无 Preconditions: 堆栈非空 Press: 删除栈顶元素 Output: 返回被删除的栈顶元素 Postconditions 原栈顶元素被从栈中删除