循环队列入队伪算法讲解
两步完成:
1.将值存入r所代表的位置
2.错误的写法r=r+1;
正确的写法是:r=(r+1)%数组的长度
入队操作
一定要搞清指针的概念。
首先rear和head指向同一个元素。然后,我们使rear的next指向新元素,这样rear指向的元素(即1)的next就是新元素了。最后,我们让rear指向新元素。这样一个入队操作就完成了。
代码如下:
status enQueue(LinkQueue* que,QElemtype e){QueuePtr p = (QueuePtr)malloc(sizeof(QNode));if(!p) //若未能申请到空间,便退出return ERROR;p->data=e;p->next=NULL;que->rear->next = p;que->rear=p;return OK;
}