数据结构--链表、栈、队列存储结构总结

链表、栈、队列的顺序存储方式为:

#define MAXSIZE 10
typedef int ElementType;

//顺序表的存储结构
typedef struct
{
  ElementType data[MAXSIZE];
  int  length;//表示线性表的长度,初始为0,最大值为MAXSIZE
}SqList;


//栈的顺序存储
typedef struct
{
  ElementType data[MAXSIZE];
  int top;//栈顶指针,初始为-1,栈满为(MAXSIZE-1)
  //栈空:S.top==-1;  栈满:S.top==MAXSIZE-1
}SqStack;



//队列的顺序存储
typedef struct
{
  ElementType data[MAXSIZE];
  int front;//头指针,若队列不空,指向队列头元素
  int rear;//尾指针,若对列不空,指向队列尾元素的下一个位置
  //栈空:Q.front=Q.rear   栈满:(Q.rear+1)%MAXSIZE==Q.rear
}SqQueue;

链表、栈、队列的链式存储方式为:
typedef int ElementType;

//单链表的存储结构
typedef struct LNode
{
  ElementType data;
  struct LNode *next;
}LNode,*LinkList;


//链栈的存储结构
typedef struct SNode
{
  ElementType data;
  struct SNode *next;
}SNode,*StackPtr;
typedef struct
{
  stackPtr top;
  int length;
}LinkStack;


//链队列的存储结构
typedef struct QNode
{
  ElementType data;
  struct QNode *next;
}QNode, *QueuePtr;
typedef struct
{
  QueuePtr front;
  QueuePtr rear;
}LinkQueue;


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值