
数据结构之队列
队列的链式存储
typedef struct node *ptnode;
struct node{
elementtype data;
ptnode next;
}
typedef ptnode position;
struct qnode{
position front,rear;
int maxsize;
}
typedef struct qnode *queue;
1.判断队列是否为空
elementtype isempty(queue q){
return (q->front==null);
}
2.删除一个元素
elementtype deleteq(queue q){
position frontcell;
elementtype frontitem;
if(isempty(q)){
printf("队列为空");
return error;
}else{
frontcell = q->front;
if(q->front==q->rear)//只有一个元素
q->front==q->rear==null;
else
q->front=q->front->next;
frontitem = frontcell->data;
free(frontcell);
return frontitem;
}
}




近期评论