队列和栈的结构的定义

1、栈
(1)、顺序栈的结构体定义
typedef struct
 {
        SElemType *base;      //SElemType 所要操作栈结构的数据结构体,base为栈底指针
        SElemType *top;            //top为栈顶指针;
        int StackSize;                  //栈结构所分配的空间大小,这里由于是顺序结构,所以size为定长,如果不够使用在此重新分配
}
(2)、链式栈的结构体定义
//节点定义
typedef struct LNode
{
        SElemType data;             //数据域
        struct LNode *next;          //指针域
}
//栈结构定义
typedef struct LStack
{
        struct LNode *top;            //栈顶指针
}

2、队列
(1)、顺序队列的结构体定义
typedef struct Sequene
{
        QElemType data;//数据域
        int font,rear;          //指针域,头尾指针
        int Size;//初始化队列的大小
}
(2)、链式队列的结构体定义
//节点定义
typedef struct QNode
{
        QElemType data;         //数据域
        struct QNode *next;     //指针域
}QNode, *QuenePtr;
//队列结构体定义
typedef struct LinkQuene
{
        QuenePtr front;        //对头指针
        QuenePtr rear;         //队尾指针
}

你可能感兴趣的:(队列和栈的结构的定义)