5--栈队列串数组.pptx

5--栈队列串数组概要

软件技术基础 线性结构——栈、队列 栈结构 2、堆栈 stack 栈是特殊的线性表,仅在表的一端进行插入或删除操作 是抽屉一类物理实体的逻辑抽象 类似仓库、抽屉的结构 an ... a2 a1 栈顶 入栈 出栈 栈底 特点:(1)对栈内数据的操作总在栈顶进行 (2)数据进栈称为“压入”push (3)数据出栈称为“弹出”pop (4)遵循“后进先出”的原则LIFO 用数组实现栈——顺序栈(一) 2.1用数组实现栈 (1)定义 若定义a[0]为栈底,top为栈顶 (2`)压入 push——将新元素放在栈顶 当新元素入栈时,栈顶上移,新元素放在栈顶。 a[MAX-1] ... 253 150 ... 360 栈顶 typedef struct stack_type{ elemtype data[MAXNUM]; int top; //栈顶元素所在位置 }stack_type; ... stack.top = stack.top + 1; stack.data[stack.top] = new_one; new_one 栈顶元素 所在位置 a1 a2 元素个数为top+1 顺序栈(一) (3`)弹出 pop——从栈顶移出一个数据 栈顶元素拷贝出来 栈顶下移 拷贝出来的栈顶作为函数返回值 46 a[MAX-1] ... 253 150 a1 a2 栈顶 out

文档评论(0)

1亿VIP精品文档

相关文档