【原创】栈和队列的数据结构实现
栈
- #include<stdlib.h>
- struct stack{
- int* number;
- int n;
- };
- void init_stack(struct stack *s,int size){
- s->number=(int*)malloc(4*size);
- s->n=0;
- }
- void push_stack(struct stack *s,int push_num){
- s->n++;
- s->number[s->n]=push_num;
- }
- void pop_stack(struct stack *s){
- s->number[s->n]=0;
- s->n--;
- }
- int top_stack(struct stack s){
- return s.number[s.n];
- }
队列
- struct queue{
- int* number;
- int start,end;
- };
- void init_queue(struct queue *s,int size){
- s->number=(int*)malloc(4*size);
- s->start=0;s->end=0;
- }
- void push_queue(struct queue *s,int push_num){
- s->end++;
- s->number[s->end]=push_num;
- }
- void pop_queue(struct queue *s){
- s->number[s->start]=0;
- s->start++;
- }
- int front_queue(struct queue s){
- return s.number[s.start+1];
- }
赞 (0)
