三#栈的存储结构及算法2)顺序栈初始化(1)#操作:建一空栈,将栈顶位设置为-1(2)接口:入口和出口参数均为堆栈指针S(3)算法描述:令栈顶位 s.top为-1(4)函数实现:voidiniStack(SeqStack &s)(s.top = -l:人数据结构一一栈和队列计算机软件技术基础
三、栈的存储结构及算法 2)顺序栈初始化 ⑴ 操作: 建一空栈,将栈顶位设置为-1 ⑵ 接口: 入口和出口参数均为堆栈指针s ⑶ 算法描述:令栈顶位 s.top为-1 ⑷ 函数实现: void iniStack(SeqStack &s){ s.top = -1; } 计算机软件技术基础 数据结构——栈和队列
三栈的存储结构及算法3)进栈算法(1)操作:①先将栈顶位置加一将数据放入栈顶位置(2)接口:入口参数:堆栈指针s,新数据元素X出口参数:堆栈指针S①函数值:成功则返回1(用true表示),失败则返回O(用false表示)计算机软件技术基础数据结构一一栈和队列
三、栈的存储结构及算法 3)进栈算法 ⑴ 操作: 先将栈顶位置加一 将数据放入栈顶位置 ⑵ 接口: 入口参数:堆栈指针s,新数据元素x 出口参数: 堆栈指针s 函数值: 成功则返回 1 ( 用true表示), 失败则返回 0 ( 用false表示) 计算机软件技术基础 数据结构——栈和队列
三、栈的存储结构及算法(3)算法描述初始化栈满?是否出错栈顶位加一返回false插入数据x,返回true数据结构一一栈和队列计算机软件技术基础
三、栈的存储结构及算法 (3)算法描述 初始化 栈满 ? 是 否 出错 栈顶位加一 返回 false 插入数据 x ,返回 true 计算机软件技术基础 数据结构——栈和队列
三栈的存储结构及算法(4)函数实现int push(SeqStack &s, elemtype x)if(s.top >= MAXSIZE-1) return (false);s. top++;s.stack[s. top]=x;return (true);人数据结构一一栈和队列计算机软件技术基础
三、栈的存储结构及算法 (4) 函数实现 int push(SeqStack &s, elemtype x) { if(s.top >= MAXSIZE-1) return (false); s.top++; s.stack[s.top]=x; return (true); } 计算机软件技术基础 数据结构——栈和队列
三大栈的存储结构及算法4)出栈算法(1)操作①取栈顶位置内数据①再将栈顶位置减一(2)接口@入口参数:堆栈指针s①出口参数:堆栈指针S@函数值:成功则返回数据元素X,失败则返回NULL计算机软件技术基础数据结构一一栈和队列
三、栈的存储结构及算法 4)出栈算法 (1) 操作 取栈顶位置内数据. 再将栈顶位置减一 (2) 接口 入口参数:堆栈指针s 出口参数: 堆栈指针s 函数值: 成功则返回数据元素x, 失败则返 回NULL 计算机软件技术基础 数据结构——栈和队列