码迷,mamicode.com
首页 > 其他好文 > 详细

栈和队列

时间:2018-10-03 00:22:49      阅读:154      评论:0      收藏:0      [点我收藏+]

标签:struct   队列   增加   ++   free   tac   特殊   头插法   links   

栈和队列是特殊的线性表

栈是插入和删除都在栈尾的线性表

分为两种实在形式一种是顺序方式另一种是链表方式

顺序方式时用 top表示

typedef int datatype;

typedef struct{

  datatype data[MAXSIZE];

  int top;

}sqtack;

根据数据结构的不同,实在方法也不同

顺序方式下

push操作是 top为空时是 -1 增加的情况top + 1,pop则相反

链式方式下

typedef struct stackNode

{

  datatype data;

  struct stackNode *next;

}stackNode,*linkStackPtr;

 

typedef struct linkstack

{

  linkStackPtr top;

  int count;

}linkStack;

 

push的时候是头插法

malloc出新结点后,s->data = e;

s->next = top->next;

top = s;

count++;

pop的时候

top = top->next;

free(top);

count--;

 

栈和队列

标签:struct   队列   增加   ++   free   tac   特殊   头插法   links   

原文地址:https://www.cnblogs.com/ninjakim/p/9738662.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!