假设循环队列中只设rear和quelen来分别指示队尾元素的位置和队中元素的个数,试给出判别此循环队列的队满条件,并写出相应的人队和出队算法,要求出队时需返回队头元素。

欢迎免费使用小程序搜题/刷题/查看解析,提升学历,成考自考报名,论文代写、论文查重请加客服微信skr-web

假设循环队列中只设rear和quelen来分别指示队尾元素的位置和队中元素的个数,试给出判别此循环队列的队满条件,并写出相应的人队和出队算法,要求出队时需返回队头元素。

根据题意,可定义该循环队列的存储结构为: #define QueueSize 100 typedef char Datatype;//设元素的类型为char型 typedef struct { int quelen; int rear; Datatype Data[QueueSize]; }CirQueue; CirQueue*Q; 循环队列的队满条件是:Q一﹥quelen==QueueSize (1)判断队满 int FullQueue(CirQueue*Q) { //*判队满,队中元素个数等于空间大小 return Q一>quelen==QueueSize; } (2)入队 void EnQueue(CirQueue*Q,Datatype x) {//入队 if(FullQueue(Q)) Error("队已满,无法入队"); Q一>Data[-Q一>rear]=x; Q一>rear=(Q一>rear+1)%QueueSize; Q一>quelenq++; } (3)出队 Datatype DeQueue(CirQueue*Q) { //出队 if(Q一>quelen==0) Error("队已空,无元素可出队"); int tmpfront; //设一个临时队头指针 tmpfront=(QueueSize+Q一>rear—Q一:>quelen+1)%QueueSize; //计算头指针位置 Q一>quelen—一; return Q一>Data[tmpfront]; }

访客
邮箱
网址

通用的占位符缩略图

人工智能机器人,扫码免费帮你完成工作


  • 自动写文案
  • 自动写小说
  • 马上扫码让Ai帮你完成工作
通用的占位符缩略图

人工智能机器人,扫码免费帮你完成工作

  • 自动写论文
  • 自动写软件
  • 我不是人,但是我比人更聪明,我是强大的Ai
Top