/*
功能:
删除队列中的奇数元素
思路:
队列是先进先出,前面删除后面插入的了,所以呢
我们就从前面开始,删除,偶数的话就插到队尾,奇数就不管咯
结束条件呢,就是原来的队尾都删除了吧
*/
// 如果要用链队好了
#include<stdlib.h>
#include<stdio.h>
typedef struct qnode
{
int data;
struct qnode *next;
} QNode;
typedef struct
{
QNode *front;
QNode *rear;
} QList;
// 打印队列
void show(QList *q)
{
QNode * head = q->front;
if(q->rear == NULL)
{
printf("NULL\n");
}
else{
while(head!=q->rear->next)
{
printf("%d ", head->data);
head = head->next;
}
printf("\n");
}
}
// 进队
void enQueue(int val, QList *q)
{
QNode *s;
s = (QNode *)malloc(sizeof(QNode));
s->data = val;
s->next = NULL;
if(q->rear ==NULL) //链队为空,新节点是对首也是队尾
q->front = q -> re
删除链表奇数元素
最新推荐文章于 2022-10-18 22:42:35 发布