正在加载图片...
(5)置栈空 stack top=-1 (6)栈的应用 例程序的嵌套,中断的嵌套 见书P35 3.栈的链式存储结构及运算 用链表实现栈 (1)定义 typedef struct stack typet node type* top int length; 3 stack type: (2)压入psh void push(stack, new node)i new_ node->next= stack->top: stack->top= new node ck->length ++ (3)弹出pop node type* pop(stack) node type *out; out=stack->top; stack->top= stack->top->next; stack->length -- return out; (4)栈空判断 stack top= NULL (5)置栈空 能否简单的使用 stack top=NULL? 如果栈中还有链点,必须逐个将链点占用的空间释放 1、逐个将链点弹出 2、释放链点空间 void clean(stack R node type* temp while(! empty(stack))t temp= pop(stack); free(temp);)8 (5)置栈空 stack.top = -1; (6)栈的应用 例 程序的嵌套,中断的嵌套 见书 P35 3.栈的链式存储结构及运算 用链表实现栈 (1)定义 typedef struct lstack_type{ node_type * top; int length; }lstack_type; (2)压入 push void push(stack, new_node){ new_node->next = stack->top; stack->top = new_node; stack->length ++;} (3)弹出 pop node_type * pop(stack){ node_type* out; out = stack->top; stack->top = stack->top->next; stack->length --; return out;} (4)栈空判断 stack.top == NULL; (5)置栈空 能否简单的使用 stack.top = NULL ? 如果栈中还有链点,必须逐个将链点占用的空间释放 1、逐个将链点弹出 2、释放链点空间 void clean(stack){ node_type * temp; while( ! empty(stack)){ temp = pop(stack); free(temp); }
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有