电脑故障

位置:IT落伍者 >> 电脑故障 >> 浏览文章

第二部分 栈、队列和数组[8]


发布日期:2022/5/21
 

(三)队列的顺序存储结构

//顺序存储结构(循环队列)

结构定义:

#defineMAXQSIZE//最大队列长度

typedefstruct{

QElemType*base;//动态分配存储空间

intfront;//头指针若队列不空

//指向队列头元素

intrear;//尾指针若队列不空指向

//队列尾元素的下一个位置

}SqQueue;

基本操作

①初始化

StatusInitQueue(SqQueue&Q){//构造一个空队列Q

Qbase=(QElemType*)malloc

(MAXQSIZE*sizeof(QElemType));

if(!Qbase)exit(OVERFLOW);//存储分配失败

Qfront=Qrear=;

returnOK;

}

②入队

StatusEnQueue(SqQueue&QQElemTypee){//插入元素e为Q的新的队尾元素

if((Qrear+)%MAXQSIZE==Qfront)

returnERROR;//队列满

Qbase[Qrear]=e;

Qrear=(Qrear+)%MAXQSIZE;

returnOK;

}

返回《数据结构》考研复习精编

[] [] [] [] [] [] [] [] []

上一篇:第二部分 栈、队列和数组[9]

下一篇:顺序表上实现的基本运算