链式队列的插入和删除操作
- 2017-10-23 12:55:10
- 5,158 次阅读
- 0
链式队列就是采用链式存储结构存储队列,其采用单链表来实现。一个链队列需要两个分别指向队头和队尾的指针(front和rear)。在什么情况下使用链式队列和顺序队列呢?当一个应用程序同时使用多个队列时,采用链式队列比较好,而当只有一个队列时,使用顺序队列比较好。插入和删除元素即为链式队列的主要操作对象。
①链式队列插入图示:
③链式队列插入代码:
- void LQueueInsert(LinkedQueue *lqu,in x)
- {
- LQNode *p
- p=(LQNode *)malloc(sizeof(LQNode));
- p->data=x;
- p->next=NULL;
- if(lqu->rear==null)
- lqu->front=lqu->rear=p;
- else
- {
- lqu->rear->next=p;
- lqu->rear=p
- }
- }
④链式队列删除代码:
- int LQueueDelete(LinkedQueue *lqu,int &x)
- {
- LQNode *p;
- if(lqu->rear==NULL)
- return 0;
- else
- {
- p=lqu->front;
- x=p->data;
- lqu->front=lqu->front->next;
- free(p);
- }
- return 1;
- }
不止一次的来,不止一次的去,来来去去,这就是这个博客的魅力!