链栈顾名思义就是用把链表改造一下,用于实现栈。
栈的核心要点:
1.怎么实现栈先进先出的特性?
这个特性用单链表来实现,那就只在单链表的一端插入或删除单元即可。比如把尾节点当作栈底,往尾节点前面插入或者删除元素。
2.怎么体现压栈操作?
需要存储数据的时候,创建新单元存储这个数据并链接到已创建的链表上。
3.怎么体现出栈操作?
访问栈顶单元,取出数据以后,销毁该单元,即完成出栈操作
代码:
#include<stdio.h>
#include<stdlib.h>
typedef struct stack_list{
stack_list *next;
int data;
}node;
int push_Stack(node *tail,int data_1);
int pop_Stack(node *tail);
int destroy_Whole_Stack(node *tail);
int main(){
node *tail; //尾节点
node *s; //普通节点
int